summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Sulfrian <alexander@sulfrian.net>2013-01-10 19:51:48 +0100
committerAlexander Sulfrian <alexander@sulfrian.net>2013-01-10 19:51:48 +0100
commit99662768bf3c6487fc0bd0465399fd2010fc2490 (patch)
treee9842de4b3178a3500ff4f9af1335fd4dfb48acc
parent14648df7aca57da48999c7c6ae601d4edab0a0df (diff)
downloadnet_if-99662768bf3c6487fc0bd0465399fd2010fc2490.tar.gz
net_if-99662768bf3c6487fc0bd0465399fd2010fc2490.tar.bz2
net_if-99662768bf3c6487fc0bd0465399fd2010fc2490.zip
print nagios compatible status message and performance data
-rwxr-xr-xnet_if20
1 files changed, 17 insertions, 3 deletions
diff --git a/net_if b/net_if
index 2d4af93..e7825ec 100755
--- a/net_if
+++ b/net_if
@@ -79,6 +79,22 @@ sub get_if_stats {
return $stats;
}
+sub print_stats {
+ my ($stats, $count, $perfdata, $if);
+ $stats = shift @_;
+
+ $count = keys %$stats;
+ $perfdata = "";
+ for (keys %$stats) {
+ $if = $_;
+ for (qw( in4 out4 in6 out6 )) {
+ $perfdata = "$perfdata $if-$_=$stats->{$if}->{$_}";
+ }
+ }
+
+ ok("$count interfaces | $perfdata");
+}
+
my ($up, $down, $error) = get_if_status(@ARGV);
if (@$error) {
@@ -97,6 +113,4 @@ while (@$up) {
$stats->{$if} = get_if_stats($if);
}
-use Data::Dumper;
-print Dumper $stats;
-print "\n";
+print_stats($stats)