diff options
author | RincewindsHat <12514511+RincewindsHat@users.noreply.github.com> | 2021-12-02 17:10:57 +0100 |
---|---|---|
committer | RincewindsHat <12514511+RincewindsHat@users.noreply.github.com> | 2021-12-02 17:10:57 +0100 |
commit | 5a81bd813ecae7c6492e4eac001331973d9594b3 (patch) | |
tree | 299f088f56ca91a0893c94ae38bad07a7bdabc1c | |
parent | f5d22b4a5643186ce7b5649576081bbb88af7262 (diff) | |
download | monitoring-plugins-5a81bd813ecae7c6492e4eac001331973d9594b3.tar.gz |
Missing oldlog now aborts check_log
-rwxr-xr-x | plugins-scripts/check_log.sh | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/plugins-scripts/check_log.sh b/plugins-scripts/check_log.sh index 61131236..d71f420e 100755 --- a/plugins-scripts/check_log.sh +++ b/plugins-scripts/check_log.sh @@ -43,6 +43,10 @@ # check the same <log_file> for pattern matches. This is necessary # because of the way the script operates. # +# 4. This plugin does NOT have an understanding of logrotation or similar +# mechanisms. Therefore bad timing could lead to missing events +# +# # Examples: # # Check for login failures in the syslog... @@ -207,6 +211,11 @@ elif [ ! -r "$logfile" ] ; then echo "Log check error: Log file $logfile is not readable!" exit "$STATE_UNKNOWN" fi +# If no oldlog was given this can not work properly, abort then +if [ ! -v oldlog ]; then + echo "Oldlog parameter is needed" + exit $STATE_UNKNOWN +fi # If the old log file doesn't exist, this must be the first time # we're running this test, so copy the original log file over to @@ -256,7 +265,7 @@ cat "$logfile" > "$oldlog" if [ "$count" = "0" ]; then # no matches, exit with no error echo "Log check ok - 0 pattern matches found" exitstatus=$STATE_OK -else # Print total matche count and the last entry we found +else # Print total match count and the last entry we found echo "($count) $entry" exitstatus=$STATE_CRITICAL fi |