Re: [SSFR] Comptage + résultat |
[ Thread Index |
Date Index
| More debianworld.org/shellscript-fr Archives
]
Désolé j'ai repris le thread précédent et Christophe m'avait donné la
réponse.
Le 12/08/05 at 08:27, Debian Debutant a ecrit:
>Bonjour à tous,
>
>J'espère que vous allez tous bien, bientôt le week-end pour ceux qui
>bossent ;-)
>
>Voilà,
>
>J'essai de mettre en place les dernières moulinettes que Christophe m'à
>envoyé, ça fonctionne très bien.
>
>Je me base donc sur le fichier de log qui est ici :
>http://cmailhebuau.nerim.net/tmpend
>
>Il est donc trié par date et heure d'arrivée d'alerte par Machine.
>
>Jusque-là c'est nickel.
>
>Ensuite je le tri avec la moulinette suivante que vous m'avez soumis
>pour récupérer la date / heure de la première alerte pour une machine et
>la dernière le fichier à la même tête mais moins de ligne forcément :
>
>IFS=$'\n'
>for host in $(cut -d: -f3 .tmpend | uniq); do
>grep ":$host:" .tmpnet | sed -n '1p;$p' >> .tmpsortimehost
>done
>
>Je renvoi donc tout ça dans un fichier que je retraite (avec la
>moulinette ci-dessous) comme ceci pour
>récupérer cet aspect :
>
>awk -F: 'NR % 2 { a = $1 ":" $2 ; next } { printf "%s %s:%s %s\n", a,
>$1, $2, $3 }' .tmpsortimehost > .tmpfinal
>
>ca me donne donc cet aspect :
>
>[10-08-2005: 19-39-25] [10-08-2005: 20-25-44] AD2P-ADM-MASTER-01
>[10-08-2005: 18-02-17] [10-08-2005: 23-57-40] AD2P-D4-APP-ABO01-01
>[10-08-2005: 18-02-17] [10-08-2005: 23-57-39] AD2P-D4-APP-ABO01-02
>[10-08-2005: 18-04-15] [10-08-2005: 23-52-15] AD2P-D4-APP-ABO01-03
>[10-08-2005: 18-04-16] [10-08-2005: 23-54-12] AD2P-D4-APP-ABO01-04
>[10-08-2005: 18-00-14] [10-08-2005: 23-54-17] AD2P-D4-APP-ABO01-05
>
>Le soucis que j'ai maintenant c'est de coller à la suite les résultats
>de calcul des alertes avec la dernière moulinette que m'à soumis
>Christophe, qui est celle-ci :
>
>awk -F : '
>{
> mac = $3
> # si tu veux pas les 0 0 0 etc.... deplace la ligne
> # nmac[mac]=1
> # dans chacun des blocs ci dessous (sauf le bloc
> # END) bien sur.
> #nmac[mac]=1
>}
>/- CRITICAL -/ {
> nmac[mac]=1
> CRITICAL[mac]++
> next
>}
>/- WARNING -/ {
> nmac[mac]=1
> WARNING[mac]++
> next
>}
>/- UNKNOWN -/ {
> nmac[mac]=1
> UNKNOWN[mac]++
> next
>}
>END
> {
> for( i in nmac ) {
> printf" %20s %: %CRITICAL %%4d %WARNING %%4d %UNKNOWN %%4d\n", %i, %CRITICAL[i], %WARNING[i], %UNKNOWN[i] }
>}
>'.tmpend >> test
>
>Elle compte bien (J'ai changé l'aspect des Critical du fichier en url,
>il sont bien au format majuscule dans mon fichier que je traite) ca
>marche très bien. Maintenant c'est de tout regrouper dans le meme
>fichier.
>
>voila ce que donne le fichier test qui regroupe les comptages par
>machine :
>
>AD2P-D4-APP-ABO02-05 : CRITICAL 50 WARNING 0 UNKNOWN 0
> AD2P-ZG-SDB-CFA-01 : CRITICAL 0 WARNING 96 UNKNOWN 0
>AD2P-D4-APP-ABO02-06 : CRITICAL 49 WARNING 0 UNKNOWN 0
> AD2P-ZA-APP-SUP-01 : CRITICAL 0 WARNING 1 UNKNOWN 4
> AD2P-ADM-MASTER-01 : CRITICAL 0 WARNING 1 UNKNOWN 0
> AD2P-ZG-SDB-REC-01 : CRITICAL 0 WARNING 96 UNKNOWN 0
>
>Il me manque juste la date/heure de première alerte et la dernière
>date/heure de la dernière alerte.
>
>Je cherche...
>
>J'ai peut être zappé qqchose, c'est même sur !
>
>
>bien à vous
>
>
>--
fin du message de Debian Debutant
--
Christophe Debutant