Adjust check_swap tests
[monitoring-plugins.git] / plugins-scripts / check_sensors.sh
blob866e0e0f06489ad1cad19fefc7381c2a36bd66ff
1 #!/bin/sh
3 PATH="@TRUSTED_PATH@"
4 export PATH
5 PROGNAME=$(basename "$0")
6 PROGPATH=$(echo "$0" | sed -e 's,[\\/][^\\/][^\\/]*$,,')
7 REVISION="@NP_VERSION@"
9 . "$PROGPATH"/utils.sh
11 print_usage() {
12 echo "Usage: $PROGNAME" [--ignore-fault]
15 print_help() {
16 print_revision "$PROGNAME" "$REVISION"
17 echo ""
18 print_usage
19 echo ""
20 echo "This plugin checks hardware status using the lm_sensors package."
21 echo ""
22 support
23 exit "$STATE_OK"
26 case "$1" in
27 --help)
28 print_help
29 exit "$STATE_UNKNOWN"
31 -h)
32 print_help
33 exit "$STATE_UNKNOWN"
35 --version)
36 print_revision "$PROGNAME" "$REVISION"
37 exit "$STATE_UNKNOWN"
39 -V)
40 print_revision "$PROGNAME" "$REVISION"
41 exit "$STATE_UNKNOWN"
44 sensordata=$(sensors 2>&1)
45 status=$?
46 if test ${status} -eq 127; then
47 text="SENSORS UNKNOWN - command not found (did you install lmsensors?)"
48 exit=$STATE_UNKNOWN
49 elif test "${status}" -ne 0; then
50 text="WARNING - sensors returned state $status"
51 exit=$STATE_WARNING
52 elif echo "${sensordata}" | grep -E ALARM > /dev/null; then
53 text="SENSOR CRITICAL - Sensor alarm detected!"
54 exit=$STATE_CRITICAL
55 elif echo "${sensordata}" | grep -E FAULT > /dev/null \
56 && test "$1" != "-i" -a "$1" != "--ignore-fault"; then
57 text="SENSOR UNKNOWN - Sensor reported fault"
58 exit=$STATE_UNKNOWN
59 else
60 text="SENSORS OK"
61 exit=$STATE_OK
64 echo "$text"
65 if test "$1" = "-v" -o "$1" = "--verbose"; then
66 echo "${sensordata}"
68 exit "$exit"
70 esac