diff options
author | Karl DeBisschop <kdebisschop@users.sourceforge.net> | 2004-02-20 05:21:21 +0000 |
---|---|---|
committer | Karl DeBisschop <kdebisschop@users.sourceforge.net> | 2004-02-20 05:21:21 +0000 |
commit | 7ba54264fb8b614f0ea0bc9eab5c974e2dca7cd8 (patch) | |
tree | 78785a8fc62d7b89937efa9b5c23d007be7cee43 /plugins/utils.c | |
parent | 01a27016b794c8f779231bdf9ca48b371a4c7c85 (diff) | |
download | monitoring-plugins-7ba54264fb8b614f0ea0bc9eab5c974e2dca7cd8.tar.gz |
add perfdata function for floats to complement ints, also spell fix "received"
git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@817 f882894a-f735-0410-b71e-b25c423dba1c
Diffstat (limited to 'plugins/utils.c')
-rw-r--r-- | plugins/utils.c | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/plugins/utils.c b/plugins/utils.c index ec254739..77e2e279 100644 --- a/plugins/utils.c +++ b/plugins/utils.c @@ -544,3 +544,42 @@ char *perfdata (const char *label, return data; } + + +char *fperfdata (const char *label, + double val, + const char *uom, + int warnp, + double warn, + int critp, + double crit, + int minp, + double minv, + int maxp, + double maxv) +{ + char *data = NULL; + + if (strpbrk (label, "'= ")) + asprintf (&data, "'%s'=%ld%s;", label, val, uom); + else + asprintf (&data, "%s=%ld%s;", label, val, uom); + + if (warnp) + asprintf (&data, "%s%ld;", data, warn); + else + asprintf (&data, "%s;", data); + + if (critp) + asprintf (&data, "%s%ld;", data, crit); + else + asprintf (&data, "%s;", data); + + if (minp) + asprintf (&data, "%s%ld", data, minv); + + if (maxp) + asprintf (&data, "%s;%ld", data, maxv); + + return data; +} |