Bonjour,
J'ai crée un plugin nagios pour surveiller mes ressources informatique, cependant j'ai l'impression que j'ai un problème avec mon script que voici :
Pour faire simple, le script va chercher chercher une valeur et son unité, pour la comparer à des seuils.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45 #!/bin/bash #Arguments while getopts A:B:C:D:E:F:hV OPT do case $OPT in A) AUTOMATE=$OPTARG ;; B) OBJECT=$OPTARG ;; C) IDENTIFIER=$OPTARG ;; D) WARN=$OPTARG ;; E) CRIT=$OPTARG ;; F) MAX=$OPTARG ;; h) print_help exit $STATE_UNKNOWN ;; V) print_version exit $STATE_UNKNOWN ;; esac done #On va chercher la valeur val=$(/tmp/bacnet-stack-0.8.3/bin/bacrp $AUTOMATE $OBJECT $IDENTIFIER 85 | sed 's/\r//') unite=$(/tmp/bacnet-stack-0.8.3/bin/bacrp $AUTOMATE $OBJECT $IDENTIFIER 117 | sed 's/\r//') #Arrondir le nombre valeur=$(echo $val | cut -f1 -d\.) #Réinscription de l'unité unity=$(echo $unite | sed 's/degrees-celsius/°C/g' | sed 's/percent-relative-humidity/% humidité relative/g' | sed 's/percent/%/g' | sed 's/no-units//g' | sed 's/kilowatt-hours/kWh/g' | sed 's/cubic-meters-per-hour/m3h/g' | sed 's/watts/W/g' | sed 's/meters/m/g' | sed 's/hours/h/g' | sed 's/revolutions-per-minute/tr\/min/g' | sed 's/parts-per-million/ppm/g') #Condition if (( $(echo " "$valeur" > "$CRIT" " | bc -l) ));then echo " "$valeur" "$unity" | $unity=$valeur;$WARN;$CRIT;0;$MAX " && exit 2 elif (( $(echo " "$valeur" >= "$WARN" " | bc -l) ));then echo " "$valeur" "$unity" | $unity=$valeur;$WARN;$CRIT;0;$MAX " && exit 1 else echo " "$valeur" "$unity" | $unity=$valeur;$WARN;$CRIT;0;$MAX " && exit 0 fi
Cependant, lorsque je laisse le plugin tourner sous centreon, je récupère des valeurs que je ne devrais pas récupérer...
exemple :
Je ne devrais avoir en légende que le "C°" et non pas les autres valeurs.
Donc selon vous, est ce que cela est dû à un problème dans mon script, à avoir avec centreon, ou ma commande pour récupérer les valeurs ?
Sachant que je n'ai jamais rencontré ce problème lorsque je lance mon script sous bash
Partager