packages: nagios-plugin-check_ipmi/check_ipmi - add verbose output support
glen
glen at pld-linux.org
Thu Mar 15 08:14:23 CET 2012
Author: glen Date: Thu Mar 15 07:14:23 2012 GMT
Module: packages Tag: HEAD
---- Log message:
- add verbose output support
---- Files affected:
packages/nagios-plugin-check_ipmi:
check_ipmi (1.14 -> 1.15)
---- Diffs:
================================================================
Index: packages/nagios-plugin-check_ipmi/check_ipmi
diff -u packages/nagios-plugin-check_ipmi/check_ipmi:1.14 packages/nagios-plugin-check_ipmi/check_ipmi:1.15
--- packages/nagios-plugin-check_ipmi/check_ipmi:1.14 Wed Mar 9 11:23:40 2011
+++ packages/nagios-plugin-check_ipmi/check_ipmi Thu Mar 15 08:14:18 2012
@@ -2,6 +2,7 @@
# License: GPL v2
# Copyright (c) 2007 op5 AB
# Author: Hugo Hallqvist <dev at op5.com>
+# Copyright (c) 2010-2012
# Author: Elan Ruusamäe <glen at delfi.ee>
#
# Ported to pure shell by Elan Ruusamäe
@@ -20,17 +21,17 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
-# Description:
+# Description:
# Nagios plugin for locally checking hardware status (fans, voltage) via ipmi.
# It utilizes ipmitool to get results from kernel.
#
# Usage: check_ipmi <filename>
-#
+#
# filename points to a file which is used as a cache for speeding up the check.
PROGRAM=${0##*/}
-REVISION=$(echo '$Revision$' | sed -e 's/[^0-9.]//g')
PROGPATH=${0%/*}
+R='$Revision$'; R=${R#* *}; REVISION=${R%% *}
ARGS="$*"
. $PROGPATH/utils.sh
@@ -38,11 +39,19 @@
ipmitool=/usr/bin/ipmitool
sudo=/usr/bin/sudo
modprobe=/sbin/modprobe
+outfile=
+verbose=false
die() {
eval local rc=\$STATE_$1
[ "$rc" ] || rc=$STATE_UNKNOWN
echo "$2"
+
+ # print also verbose output out
+ if $verbose; then
+ cat $outfile
+ rm -f $outfile
+ fi
exit $rc
}
@@ -64,6 +73,8 @@
grep extended regexp which sensors to ignore
-I
comma separated list of statuses to ignore
+ -v
+ enable verbose output (prints each sensor which is not ignored)
EOF
}
@@ -174,6 +185,9 @@
echo $PROGRAM $REVISION
exit 0
;;
+ -v)
+ verbose=:
+ ;;
-c)
check_ipmitool=1
;;
@@ -230,6 +244,11 @@
# Fan 4 | 29.40 unspecifi | nc
# Fans | 0 unspecified | nc
+# setup outfile, because we should print verbose after status message
+if $verbose; then
+ outfile=$(mktemp) || die CRITICAL "Can't create tempfile"
+fi
+
ok_sensors=0
warn_sensors=0
crit_sensors=0
@@ -270,6 +289,9 @@
critical="$critical($label, $status, $result) "
;;
esac
+ if $verbose; then
+ echo "$label $result $status" >> $outfile
+ fi
done < $t
rm -f $t
================================================================
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/nagios-plugin-check_ipmi/check_ipmi?r1=1.14&r2=1.15&f=u
More information about the pld-cvs-commit
mailing list