aboutsummaryrefslogtreecommitdiffstats
path: root/sitesummary-nodes
diff options
context:
space:
mode:
authorPetter Reinholdtsen <pere@hungry.com>2013-02-03 12:49:14 +0000
committerPetter Reinholdtsen <pere@hungry.com>2013-02-03 12:49:14 +0000
commit5f682db9bfa7d451869914b420004df6264893e9 (patch)
treef7c0c045e9ecae7e7cabda24680a8d62bf55f09e /sitesummary-nodes
parent53968d0a16ce598a9f0c8979afa0d7d97dcbf2f6 (diff)
downloadsitesummary-5f682db9bfa7d451869914b420004df6264893e9.tar.gz
sitesummary-5f682db9bfa7d451869914b420004df6264893e9.tar.bz2
sitesummary-5f682db9bfa7d451869914b420004df6264893e9.tar.xz
sitesummary-nodes: Add support for fetching configuration from
/etc/sitesummary/sitesummary-nodes.conf, and make it possible to configure the nagios warning and critical levels for ping checks.
Diffstat (limited to 'sitesummary-nodes')
-rwxr-xr-xsitesummary-nodes25
1 files changed, 19 insertions, 6 deletions
diff --git a/sitesummary-nodes b/sitesummary-nodes
index 2ff836c..c97dbae 100755
--- a/sitesummary-nodes
+++ b/sitesummary-nodes
@@ -10,6 +10,7 @@ use SiteSummary;
use Getopt::Std;
use Socket;
use File::Temp qw(tempfile);
+use vars qw($npingwarn $npingwarnp $npingcrit $npingcritp);
sub usage {
print <<EOF;
@@ -22,11 +23,17 @@ Usage: $0 [-hmnw]
EOF
}
+$npingwarn = 100.0;
+$npingwarnp = 20; # percent
+$npingcrit = 500.0;
+$npingcritp = 60; # percent
+
# Idea for way to provide overrides for the functions in this script
-#eval 'require "/etc/sitesummary/sitesummary-nodes-override"';
-#if ($@ && $@ !~ qr{^Can't locate /etc/sitesummary/sitesummary-nodes-override}) {
-# die $@;
-#};
+my $conffile = "/etc/sitesummary/sitesummary-nodes.conf";
+eval 'require "$conffile"';
+if ($@ && $@ !~ qr{^Can't locate $conffile}) {
+ die $@;
+};
my %opts;
getopts("hmnw", \%opts) || (usage(), exit(1));
@@ -315,7 +322,10 @@ sub generate_nagios_config {
$hosts{$defaultroute} = $defaultroute;
$hostgroup{"router"} = 1;
print_nagios_service_check(0, $defaultroute, "ping",
- "check_ping", "100.0,20%!500.0,60%");
+ "check_ping",
+ sprintf("%.1f,%d%%!%.1f,%d%%",
+ $npingwarn, $npingwarnp,
+ $npingcrit, $npingcritp));
}
my %switch = get_switch_info($hostid);
@@ -336,7 +346,10 @@ sub generate_nagios_config {
# first, check ping to see if the other checks should be performed
print_nagios_service_check(0, $hostname, "ping",
- "check_ping", "100.0,20%!500.0,60%");
+ "check_ping",
+ sprintf("%.1f,%d%%!%.1f,%d%%",
+ $npingwarn, $npingwarnp,
+ $npingcrit, $npingcritp));
my %tcpservices =
(