commit 2abe1e6de0b778cc401897e32890d0f8c5b840c3
Author: Elan Ruusamäe <[email protected]>
Date:   Sun Sep 2 09:17:50 2012 +0000

    - add warning/critical levels, check them
    
    Changed files:
        check_mysql-heartbeat.sh -> 1.4

 check_mysql-heartbeat.sh | 31 ++++++++++++++++++++++++++-----
 1 file changed, 26 insertions(+), 5 deletions(-)
---
diff --git a/check_mysql-heartbeat.sh b/check_mysql-heartbeat.sh
index bdbcc42..c9eb042 100755
--- a/check_mysql-heartbeat.sh
+++ b/check_mysql-heartbeat.sh
@@ -16,11 +16,13 @@ port=
 username=
 password=
 database=
+warning=200
+critical=400
 
 die() {
        eval local rc=\$STATE_$1
        [ "$rc" ] || rc=$STATE_UNKNOWN
-       echo "$2"
+       echo "$1: $2"
        exit $rc
 }
 
@@ -33,6 +35,8 @@ Usage: check_mysql-heartbeat
     --pt, --percona-toolkit
        Uses percona-toolkit: pt-hearbeat
 
+    -w SECONDS, --warning SECONDS
+    -c SECONDS,--critical SECONDS
     -H HOSTNAME, --host HOSTNAME
     -P PORT, --port PORT
     -u USERNAME, --username USERNAME
@@ -42,7 +46,7 @@ EOF
 }
 
 # Parse arguments
-args=$(getopt -o hVH:P:u:p:D: --long 
help,version,mk,maatkit,pt,percona-tookit,host:,port:,username:,password:,database:
 -u -n $PROGRAM -- "$@")
+args=$(getopt -o hVw:c:H:P:u:p:D: --long 
help,version,warning:,critical:,mk,maatkit,pt,percona-tookit,host:,port:,username:,password:,database:
 -u -n $PROGRAM -- "$@")
 if [ $? != 0 ]; then
        usage
        exit 1
@@ -66,6 +70,14 @@ while :; do
        --pt|--percona-toolkit)
                heartbeat=mk-heartbeat
                ;;
+       -c|--critical)
+               shift
+               critical=$1
+               ;;
+       -w|--warning)
+               shift
+               warning=$1
+               ;;
        -H|--host)
                shift
                hostname=$1
@@ -101,9 +113,18 @@ if [ -z "$hostname" ]; then
        die UNKNOWN "No hostname given"
 fi
 
-out=$($heartbeat ${database:+-D $database} --check -h $hostname ${username:+-u 
$username} ${password:+-p $password} 2>&1)
+# check out config errors
+if [ $warning -gt $critical ]; then
+       die UNKNOWN "Warning level bigger than critical level"
+fi
+
+secs=$($heartbeat ${database:+-D $database} --check -h $hostname 
${username:+-u $username} ${password:+-p $password} 2>&1)
 rc=$?
 if [ "$rc" != 0 ]; then
-       die UNKNOWN "$out"
+       die UNKNOWN "$secs"
 fi
-die OK "OK $heartbeat on $hostname @$out"
+
+[ $secs -gt $critical ] && die CRITICAL "$heartbeat on $hostname $secs seconds 
over critical treshold $critical seconds"
+[ $secs -gt $warning ] && die WARNING "$heartbeat on $hostname $secs seconds 
over warning treshold $warning seconds"
+
+die OK "$heartbeat on $hostname @$secs seconds"
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/monitoring-plugin-check_mysql-heartbeat.git/commitdiff/c97836d2e3bccf7d77e278a624bc4dd433f544f9

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

Reply via email to