[monitoring-plugins] check_file_age: Provide performance data
Holger Weiss
git at monitoring-plugins.org
Mon Oct 6 20:20:08 CEST 2014
Module: monitoring-plugins
Branch: master
Commit: 3b02d7fafba6ef35cac9af47ce046f9c7a6fc510
Author: Jonas Genannt <jonas at brachium-system.net>
Committer: Holger Weiss <holger at zedat.fu-berlin.de>
Date: Tue Sep 23 12:51:55 2014 +0200
URL: https://www.monitoring-plugins.org/repositories/monitoring-plugins/commit/?id=3b02d7f
check_file_age: Provide performance data
---
NEWS | 1 +
plugins-scripts/check_file_age.pl | 5 +++--
plugins-scripts/t/check_file_age.t | 8 +++++++-
3 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/NEWS b/NEWS
index bc5b0fa..f84318b 100644
--- a/NEWS
+++ b/NEWS
@@ -13,6 +13,7 @@ This file documents the major additions and syntax changes between releases.
check_disk shows now troubled partions in verbose mode
check_dig has now support for drill and dig
check_dig has now support for -6 option
+ Add performance data to check_file_age
FIXES
Fix check_jabber to work with Openfire servers
diff --git a/plugins-scripts/check_file_age.pl b/plugins-scripts/check_file_age.pl
index 453e0f5..4415fdf 100755
--- a/plugins-scripts/check_file_age.pl
+++ b/plugins-scripts/check_file_age.pl
@@ -34,7 +34,7 @@ sub print_help ();
sub print_usage ();
my ($opt_c, $opt_f, $opt_w, $opt_C, $opt_W, $opt_h, $opt_V, $opt_i);
-my ($result, $message, $age, $size, $st);
+my ($result, $message, $age, $size, $st, $perfdata);
$PROGNAME="check_file_age";
@@ -92,6 +92,7 @@ unless (-e $opt_f) {
$st = File::stat::stat($opt_f);
$age = time - $st->mtime;
$size = $st->size;
+$perfdata = "age=${age}s;${opt_w};${opt_c} size=${size}B;${opt_W};${opt_C};0";
$result = 'OK';
@@ -103,7 +104,7 @@ elsif (($opt_w and $age > $opt_w) or ($opt_W and $size < $opt_W)) {
$result = 'WARNING';
}
-print "FILE_AGE $result: $opt_f is $age seconds old and $size bytes\n";
+print "FILE_AGE $result: $opt_f is $age seconds old and $size bytes | $perfdata\n";
exit $ERRORS{$result};
sub print_usage () {
diff --git a/plugins-scripts/t/check_file_age.t b/plugins-scripts/t/check_file_age.t
index a515649..50a2e69 100644
--- a/plugins-scripts/t/check_file_age.t
+++ b/plugins-scripts/t/check_file_age.t
@@ -5,13 +5,14 @@
#
use strict;
-use Test::More tests => 16;
+use Test::More tests => 17;
use NPTest;
my $successOutput = '/^FILE_AGE OK: /';
my $warningOutput = '/^FILE_AGE WARNING: /';
my $criticalOutput = '/^FILE_AGE CRITICAL: /';
my $unknownOutput = '/^FILE_AGE UNKNOWN: /';
+my $performanceOutput = '/ \| age=[0-9]+s;[0-9]+;[0-9]+ size=[0-9]+B;[0-9]+;[0-9]+;0$/';
my $result;
my $temp_file = "/tmp/check_file_age.tmp";
@@ -58,6 +59,11 @@ $result = NPTest->testCmd(
cmp_ok( $result->return_code, '==', 0, "Checking file size" );
$result = NPTest->testCmd(
+ "./check_file_age -f $temp_file -c 1000 -W 100"
+ );
+like( $result->output, $performanceOutput, "Checking for performance Output" );
+
+$result = NPTest->testCmd(
"./check_file_age -f /non/existent --ignore-missing"
);
cmp_ok( $result->return_code, '==', 0, "Honours --ignore-missing" );
More information about the Commits
mailing list