[BACK]Return to check_rsnapshot CVS log [TXT][DIR] Up to [local] / nagios / check_rsnapshot

File: [local] / nagios / check_rsnapshot / check_rsnapshot (download)

Revision 1.1, Sat Oct 12 17:47:34 2013 UTC (10 years, 7 months ago) by andrew
Branch: MAIN

Add a tool to see if backups are successful.

#!/bin/sh
# $Id: check_rsnapshot,v 1.1 2013/10/12 17:47:34 andrew Exp $

. /usr/local/libexec/nagios/utils.sh

grep rsnapshot /var/log/messages | tail -25 | (
  STATUS=UNKNOWN
  CRITICAL=
  UNKNOWN=
  while read line; do
    if [ "$line" != "${line% Starting snapshot*}" ]; then
      STATUS=STARTED
	  CRITICAL=
	  WARN=
    elif [ "$line" != "${line% Finished snapshot*}" ]; then
      if [ $STATUS != 'CRITICAL' ]; then
        STATUS=FINISHED
      fi
    elif [ "$line" != "${line% ERROR*}" ]; then
      STATUS=CRITICAL
	  CRITICAL="$CRITICAL ${line#*]:}<br />"
    elif [ $STATUS != CRITICAL ]; then
      STATUS=UNKNOWN
	  UNKNOWN="$UNKNOWN ${line#*]:}<br />"
    fi
  done

  if [ $STATUS = "STARTED" -o $STATUS = "FINISHED" ]; then
	$ECHO OK
	exit $STATE_OK
  elif [ $STATUS = UNKNOWN ]; then
	$ECHO "UNKNOWN: $UNKNOWN"
	exit $STATE_UNKNOWN
  else
	$ECHO "CRITICAL: $CRITICAL"
	exit $STATE_CRITICAL
  fi
)