[project @ peter@palfrader.org-20080414213832-potloz85vt4hpvgi]
authorPeter Palfrader <peter@palfrader.org>
Mon, 14 Apr 2008 21:38:32 +0000 (17:38 -0400)
committerPeter Palfrader <peter@palfrader.org>
Mon, 14 Apr 2008 21:38:32 +0000 (17:38 -0400)
dsa-check-dabackup: Use last time's log file if backup is currently running

dsa-nagios-nrpe-config/debian/changelog
dsa-nagios-nrpe-config/dsa-check-dabackup

index 595db7d..cff50a1 100644 (file)
@@ -1,3 +1,9 @@
+dsa-nagios-nrpe-config (31) unstable; urgency=low
+
+  * dsa-check-dabackup: Use last time's log file if backup is currently running.
+
+ -- Peter Palfrader <weasel@debian.org>  Mon, 14 Apr 2008 17:37:54 -0400
+
 dsa-nagios-nrpe-config (30) unstable; urgency=low
 
   * dsa-check-raid-sw: cleaner output.
index 98d2d9e..f400023 100755 (executable)
@@ -30,7 +30,8 @@ use Getopt::Long;
 use Fcntl qw(:seek);
 
 my $DABACKUP_CONF = '/etc/da-backup.conf';
-my $MAX_AGE = 24*60*60;
+my $MAX_AGE = 30*60*60;
+my $TOO_FRESH = 5*60;
 my %CODE = (
        'UNDEF'         => -1,
        'OK'            => 0,
@@ -132,6 +133,15 @@ for my $f (sort {$a cmp $b} keys %logfiles) {
 
        my @stat = stat("$logdir/$f") or die ("Cannot stat $logdir/$f: $!\n");
        my $age = time - $stat[10];
+
+       if ($age < $TOO_FRESH) { # File is too new, let's use the old one
+               if (-e "$logdir/$f.0") {
+                       $f .= ".0";
+                       my @stat = stat("$logdir/$f") or die ("Cannot stat $logdir/$f: $!\n");
+                       $age = time - $stat[10];
+               };
+       };
+
        if ($age < 0) {
                problem('WARNING', 'future timestamp', $f);
                next;