From bc67493f91ca7597d5c465b6a8b5c400d7a5544b Mon Sep 17 00:00:00 2001 From: Isaac Connor Date: Wed, 5 Jan 2022 16:49:20 -0500 Subject: [PATCH] Alter log level of restart events based on Importance setting --- scripts/zmwatch.pl.in | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/scripts/zmwatch.pl.in b/scripts/zmwatch.pl.in index 1b4790bce..dd5cfc252 100644 --- a/scripts/zmwatch.pl.in +++ b/scripts/zmwatch.pl.in @@ -67,7 +67,7 @@ $ENV{PATH} = '/bin:/usr/bin:/usr/local/bin'; $ENV{SHELL} = '/bin/sh' if exists $ENV{SHELL}; delete @ENV{qw(IFS CDPATH ENV BASH_ENV)}; -logInit(); +my $log = logInit(); logSetSignal(); my $zm_terminate = 0; sub TermHandler { @@ -114,7 +114,7 @@ while (!$zm_terminate) { # We can't get the last capture time so can't be sure it's died, it might just be starting up. my $startup_time = zmGetStartupTime($monitor); if (($now - $startup_time) > $Config{ZM_WATCH_MAX_DELAY}) { - Warning( + $log->logPrint(ZoneMinder::Logger::WARNING+$monitor->Importance(), "Restarting capture daemon for $$monitor{Name}, no image since startup. ". "Startup time was $startup_time - now $now > $Config{ZM_WATCH_MAX_DELAY}" ); @@ -133,8 +133,9 @@ while (!$zm_terminate) { my $image_delay = $now - $capture_time; Debug("Monitor $monitor->{Id} last captured $image_delay seconds ago, max is $max_image_delay"); if ($image_delay > $max_image_delay) { - Warning('Restarting capture daemon for '.$monitor->{Name}. - ", time since last capture $image_delay seconds ($now-$capture_time)"); + $log->logPrint(ZoneMinder::Logger::WARNING+$monitor->Importance(), + 'Restarting capture daemon for '.$monitor->{Name}. + ", time since last capture $image_delay seconds ($now-$capture_time)"); $monitor->control('restart'); next; } @@ -160,10 +161,11 @@ while (!$zm_terminate) { my $image_delay = $now-$image_time; Debug("Monitor $monitor->{Id} last analysed $image_delay seconds ago, max is $max_image_delay"); if ($image_delay > $max_image_delay) { - Warning("Analysis daemon for $$monitor{Id} $$monitor{Name} needs restarting," - ." time since last analysis $image_delay seconds ($now-$image_time)"); - $monitor->control('restart'); - next; + $log->logPrint(ZoneMinder::Logger::WARNING+$monitor->Importance(), + "daemon for $$monitor{Id} $$monitor{Name} needs restarting," + ." time since last analysis $image_delay seconds ($now-$image_time)"); + $monitor->control('restart'); + next; } }