Author: glen                         Date: Wed Oct 24 22:15:19 2007 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- framework for adding NUMPATHS support

---- Files affected:
SOURCES:
   nagios-plugin-check_multipath.sh (1.6 -> 1.7) 

---- Diffs:

================================================================
Index: SOURCES/nagios-plugin-check_multipath.sh
diff -u SOURCES/nagios-plugin-check_multipath.sh:1.6 
SOURCES/nagios-plugin-check_multipath.sh:1.7
--- SOURCES/nagios-plugin-check_multipath.sh:1.6        Thu Oct 25 00:03:40 2007
+++ SOURCES/nagios-plugin-check_multipath.sh    Thu Oct 25 00:15:14 2007
@@ -20,19 +20,26 @@
 
 print_usage() {
        echo "Usage:"
-       echo "  $PROGNAME"
+       echo "  $PROGNAME [-n NUMPATHS]"
+       echo ""
+       echo "Options:"
+       echo "  -n NUMPATHS     If specified there must be NUMPATHS paths 
present for each LUN"
 }
 
 print_help() {
        print_revision $PROGNAME $REVISION
+
+       echo "Check multipath status."
        echo ""
        print_usage
        echo ""
-       echo "Check multipath status"
+       echo "Really simple: runs $MULTIPATH and greps for \"failed\" paths."
+       echo "if NUMPATHS is specified each LUN must have that number of PATHS 
present."
        echo ""
-       echo "really simple: runs $MULTIPATH and greps for \"failed\" paths. No 
options yet."
-       echo "Requires sudo."
+
+       echo "Requires sudo and multipath-tools"
        echo ""
+
        echo "Add this to your sudoers file by running visudo to add access:"
        if [ -r /proc/modules ]; then
                echo "Cmnd_Alias MULTIPATH=$MULTIPATH -l"
@@ -45,6 +52,8 @@
        support
 }
 
+NUMPATHS=''
+
 # Information options
 case "$1" in
 --help)
@@ -63,6 +72,10 @@
        print_revision $PLUGIN $REVISION
        exit $STATE_OK
        ;;
+-n)
+       shift
+       NUMPATHS="$1"
+       ;;
 esac
 
 if [ ! -x $MULTIPATH ]; then
@@ -85,25 +98,30 @@
 fi
 
 MODCOUNT=`$LSMOD | grep -c ^dm_multipath`
-if [ $MODCOUNT -gt 0 ]; then
-       OUTPUT=$($MULTIPATH -l)
-       PATHCOUNT=$(echo "$OUTPUT" | wc -l)
-       if [ $PATHCOUNT -eq 0 ]; then
-               echo "MULTIPATH: WARNING - no paths defined"
-               exit $STATEWARNING
-       else
-               FAILCOUNT=$(echo "$OUTPUT" | grep -c failed)
-               if [ $FAILCOUNT -eq 0 ]; then
-                       echo "MULTIPATH: OK - no failed paths"
-                       exit $STATE_OK
-               else
-                       echo "MULTIPATH: CRITICAL - $FAILCOUNT paths failed"
-                       exit $STATE_CRITICAL
-               fi
-       fi
-else
-       echo "MULTIPATH: UNKNOWN - module dm_multipath not loaded"
+if [ $MODCOUNT = 0 ]; then
+       echo "MULTIPATH: UNKNOWN - Module dm-multipath not loaded"
        exit $STATE_UNKNOWN
 fi
+
+OUTPUT=$($MULTIPATH -l)
+PATHCOUNT=$(echo "$OUTPUT" | wc -l)
+if [ $PATHCOUNT -eq 0 ]; then
+       echo "MULTIPATH: WARNING - No paths defined"
+       exit $STATEWARNING
+fi
+
+FAILCOUNT=$(echo "$OUTPUT" | grep -c failed)
+if [ $FAILCOUNT -gt 0 ]; then
+       echo "MULTIPATH: CRITICAL - $FAILCOUNT paths failed"
+       exit $STATE_CRITICAL
+fi
+
+if [ "$NUMPATHS" ]; then
+       echo "MULTIPATH: NUMPATHS check not implemented"
+       exit $STATE_UNKNOWN
+fi
+
+echo "MULTIPATH: OK - No failed paths"
+exit $STATE_OK
 
 # vim: ts=4:sw=4:noet
================================================================

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/nagios-plugin-check_multipath.sh?r1=1.6&r2=1.7&f=u

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to