From f3e282f12296728cfc2d174b9d67713294976417 Mon Sep 17 00:00:00 2001 From: Sami Kerola Date: Mon, 24 Mar 2014 21:07:55 +0000 Subject: [PATCH] output: make nagios output have performance data Just in case someone wants to graph what is going on. Reference: http://nagios.sourceforge.net/docs/3_0/pluginapi.html Signed-off-by: Sami Kerola --- src/output.c | 28 ++++++++++++++++++++-------- tests/expected/alarm-critical | 3 ++- tests/expected/alarm-critical-ranges | 3 ++- tests/expected/alarm-critical-snets | 2 +- tests/expected/alarm-ignore | 3 ++- tests/expected/alarm-ok | 3 ++- tests/expected/alarm-shared-ok | 2 +- tests/expected/alarm-warning | 3 ++- tests/expected/alarm-warning-ranges | 3 ++- tests/expected/alarm-warning-snets | 2 +- 10 files changed, 35 insertions(+), 17 deletions(-) diff --git a/src/output.c b/src/output.c index bc94b74..112819d 100644 --- a/src/output.c +++ b/src/output.c @@ -1072,32 +1072,44 @@ int output_alarming(void) } if ((0 < rc && config.output_limit[1] & BIT1) || (0 < sc && config.output_limit[1] & BIT2)) { ret_val = 2; - fprintf(outfile, "CRITICAL: %s: ", + fprintf(outfile, "CRITICAL: %s:", program_name); } else if ((0 < rw && config.output_limit[1] & BIT1) || (0 < sw && config.output_limit[1] & BIT2)) { ret_val = 1; - fprintf(outfile, "WARNING: %s: ", + fprintf(outfile, "WARNING: %s:", program_name); } else { ret_val = 0; if (config.output_limit[1] & BIT3) - fprintf(outfile, "OK: "); + fprintf(outfile, "OK:"); else return ret_val; } if (config.output_limit[0] & BIT1) { - fprintf(outfile, "Ranges; crit: %d warn: %d ok: %d ", rc, rw, + fprintf(outfile, " Ranges - crit: %d warn: %d ok: %d", rc, rw, ro); if (ri != 0) { - fprintf(outfile, "ignored: %d ", ri); + fprintf(outfile, " ignored: %d", ri); } - + fprintf(outfile, "; | range_crit=%d range_warn=%d range_ok=%d", rc, rw, + ro); + if (ri != 0) { + fprintf(outfile, " range_ignored=%d", ri); + } + fprintf(outfile, "\n"); + } else { + fprintf(outfile, " "); } if (config.output_limit[0] & BIT2) { - fprintf(outfile, "Shared nets; crit: %d warn: %d ok: %d", sc, + fprintf(outfile, "Shared nets - crit: %d warn: %d ok: %d", sc, sw, so); if (si != 0) { - fprintf(outfile, "ignored: %d ", si); + fprintf(outfile, " ignored: %d", si); + } + fprintf(outfile, "; | snet_crit=%d snet_warn=%d snet_ok=%d", sc, + sw, so); + if (si != 0) { + fprintf(outfile, " snet_ignored=%d\n", si); } } fprintf(outfile, "\n"); diff --git a/tests/expected/alarm-critical b/tests/expected/alarm-critical index fe0b242..1a26624 100644 --- a/tests/expected/alarm-critical +++ b/tests/expected/alarm-critical @@ -1,2 +1,3 @@ -CRITICAL: dhcpd-pools: Ranges; crit: 1 warn: 0 ok: 4 Shared nets; crit: 1 warn: 0 ok: 1 +CRITICAL: dhcpd-pools: Ranges - crit: 1 warn: 0 ok: 4; | range_crit=1 range_warn=0 range_ok=4 +Shared nets - crit: 1 warn: 0 ok: 1; | snet_crit=1 snet_warn=0 snet_ok=1 2 diff --git a/tests/expected/alarm-critical-ranges b/tests/expected/alarm-critical-ranges index fcb1833..ce1ca4d 100644 --- a/tests/expected/alarm-critical-ranges +++ b/tests/expected/alarm-critical-ranges @@ -1,2 +1,3 @@ -CRITICAL: dhcpd-pools: Ranges; crit: 1 warn: 0 ok: 4 +CRITICAL: dhcpd-pools: Ranges - crit: 1 warn: 0 ok: 4; | range_crit=1 range_warn=0 range_ok=4 + 2 diff --git a/tests/expected/alarm-critical-snets b/tests/expected/alarm-critical-snets index 8f2c02b..b85e2ee 100644 --- a/tests/expected/alarm-critical-snets +++ b/tests/expected/alarm-critical-snets @@ -1,2 +1,2 @@ -CRITICAL: dhcpd-pools: Shared nets; crit: 1 warn: 0 ok: 1 +CRITICAL: dhcpd-pools: Shared nets - crit: 1 warn: 0 ok: 1; | snet_crit=1 snet_warn=0 snet_ok=1 2 diff --git a/tests/expected/alarm-ignore b/tests/expected/alarm-ignore index 18ca9c6..6a20168 100644 --- a/tests/expected/alarm-ignore +++ b/tests/expected/alarm-ignore @@ -1 +1,2 @@ -OK: Ranges; crit: 0 warn: 0 ok: 0 ignored: 1 Shared nets; crit: 0 warn: 0 ok: 0 +OK: Ranges - crit: 0 warn: 0 ok: 0 ignored: 1; | range_crit=0 range_warn=0 range_ok=0 range_ignored=1 +Shared nets - crit: 0 warn: 0 ok: 0; | snet_crit=0 snet_warn=0 snet_ok=0 diff --git a/tests/expected/alarm-ok b/tests/expected/alarm-ok index 7137c5b..2c48043 100644 --- a/tests/expected/alarm-ok +++ b/tests/expected/alarm-ok @@ -1,2 +1,3 @@ -OK: Ranges; crit: 0 warn: 0 ok: 5 Shared nets; crit: 0 warn: 0 ok: 2 +OK: Ranges - crit: 0 warn: 0 ok: 5; | range_crit=0 range_warn=0 range_ok=5 +Shared nets - crit: 0 warn: 0 ok: 2; | snet_crit=0 snet_warn=0 snet_ok=2 0 diff --git a/tests/expected/alarm-shared-ok b/tests/expected/alarm-shared-ok index fb71df9..d34ec23 100644 --- a/tests/expected/alarm-shared-ok +++ b/tests/expected/alarm-shared-ok @@ -1,2 +1,2 @@ -OK: Shared nets; crit: 0 warn: 0 ok: 2 +OK: Shared nets - crit: 0 warn: 0 ok: 2; | snet_crit=0 snet_warn=0 snet_ok=2 0 diff --git a/tests/expected/alarm-warning b/tests/expected/alarm-warning index 1471296..0c597c1 100644 --- a/tests/expected/alarm-warning +++ b/tests/expected/alarm-warning @@ -1,2 +1,3 @@ -WARNING: dhcpd-pools: Ranges; crit: 0 warn: 1 ok: 4 Shared nets; crit: 0 warn: 1 ok: 1 +WARNING: dhcpd-pools: Ranges - crit: 0 warn: 1 ok: 4; | range_crit=0 range_warn=1 range_ok=4 +Shared nets - crit: 0 warn: 1 ok: 1; | snet_crit=0 snet_warn=1 snet_ok=1 1 diff --git a/tests/expected/alarm-warning-ranges b/tests/expected/alarm-warning-ranges index 82d97d9..94b1b98 100644 --- a/tests/expected/alarm-warning-ranges +++ b/tests/expected/alarm-warning-ranges @@ -1,2 +1,3 @@ -WARNING: dhcpd-pools: Ranges; crit: 0 warn: 1 ok: 4 +WARNING: dhcpd-pools: Ranges - crit: 0 warn: 1 ok: 4; | range_crit=0 range_warn=1 range_ok=4 + 1 diff --git a/tests/expected/alarm-warning-snets b/tests/expected/alarm-warning-snets index 636d947..39ad2f0 100644 --- a/tests/expected/alarm-warning-snets +++ b/tests/expected/alarm-warning-snets @@ -1,2 +1,2 @@ -WARNING: dhcpd-pools: Shared nets; crit: 0 warn: 1 ok: 1 +WARNING: dhcpd-pools: Shared nets - crit: 0 warn: 1 ok: 1; | snet_crit=0 snet_warn=1 snet_ok=1 1