Explorar el Código

check_sensors: Detect FAULT status

Return an UNKNOWN status if a faulty sensor is detected.  This can be
suppressed with the new "--ignore-fault" option.

(Fixes Debian bug #615133, patch suggested by Jan Wagner.)
Holger Weiss hace 14 años
padre
commit
276c5b98bf
Se han modificado 2 ficheros con 8 adiciones y 4 borrados
  1. 1 0
      NEWS
  2. 7 4
      plugins-scripts/check_sensors.sh

+ 1 - 0
NEWS

@@ -8,6 +8,7 @@ This file documents the major additions and syntax changes between releases.
 	check_http now checks for and prints the certificate cn (hostname) in SSL certificate checks (Stéphane Urbanovski)
 	Add perfdata to check_ssh (#3244097 - Marco Beck)
 	New option to check_smtp to ignore failures when sending QUIT (#3358348 - Duncan Ferguson)
+	check_sensors now detects faulty sensors unless --ignore-fault is specified (Jan Wagner)
 
 	FIXES
 	Fix check_disk free space calculation if blocksizes differ within a disk group (Bekar - #2973603)

+ 7 - 4
plugins-scripts/check_sensors.sh

@@ -10,7 +10,7 @@ REVISION="@NP_VERSION@"
 
 
 print_usage() {
-	echo "Usage: $PROGNAME"
+	echo "Usage: $PROGNAME" [--ignore-fault]
 }
 
 print_help() {
@@ -57,9 +57,12 @@ case "$1" in
 		if echo ${sensordata} | egrep ALARM > /dev/null; then
 			echo SENSOR CRITICAL - Sensor alarm detected!
 			exit 2
-		else
-			echo sensor ok
-			exit 0
+		elif echo ${sensordata} | egrep FAULT > /dev/null \
+		    && test "$1" != "-i" -a "$1" != "--ignore-fault"; then
+			echo SENSOR UNKNOWN - Sensor reported fault
+			exit 3
 		fi
+		echo sensor ok
+		exit 0
 		;;
 esac