From 2ec3f27938aecee7f9f182eba2a257c70c845afd Mon Sep 17 00:00:00 2001 From: Victor LABORIE Date: Tue, 1 Aug 2017 20:59:43 +0200 Subject: [PATCH] Add nrpe check --- check_nrpe | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 check_nrpe diff --git a/check_nrpe b/check_nrpe new file mode 100644 index 0000000..c449b51 --- /dev/null +++ b/check_nrpe @@ -0,0 +1,38 @@ +#!/bin/sh +# +# bkctld(8) - NRPE check +# +# Copyright (c) 2017 Victor Laborie +# + +[ -f /etc/default/bkctld ] && . /etc/default/bkctld + +[ -z "$JAILDIR" ] && JAILDIR="/backup/jails" + +[ -z "$CRITICAL" ] && CRITICAL=48 +[ -z "$WARNING" ] && WARNING=24 + +cur_time=$(date "+%s") +return=0 + +jails=$(ls "$JAILDIR") +for jail in $jails; do + if [ -f "$JAILDIR/$jail/var/log/lastlog" ]; then + last_conn=$(stat --format=%Y "$JAILDIR/$jail/var/log/lastlog") + date_diff=$(( ( $cur_time - $last_conn ) / (60*60) )) + if [ "$date_diff" -gt "$CRITICAL" ]; then + echo "CRITICAL - $jail - $date_diff hours" + return=2 + elif [ "$date_diff" -gt "$WARNING" ]; then + echo "WARNING - $jail - $date_diff hours" + [ "$return" -ne 2 ] && return=1 + fi + else + echo "CRITICAL - $jail doesn't have lastlog !" + return=2 + fi +done + +[ "$return" -eq 0 ] && echo "OK - Nothing to signal" + +exit "$return"