NAME
Nagios::Plugin::Performance - class for handling Nagios::Plugin performance data.
SYNOPSIS
use Nagios::Plugin::Performance;
# Constructor (also accepts a 'threshold' obj instead of warning/critical)
$p = Nagios::Plugin::Performance->new(
label => 'size',
value => $value,
uom => "kB",
warning => $warning,
critical => $critical,
min => $min,
max => $max,
);
# Parser
@perf = Nagios::Plugin::Performance->parse_perfstring(
"/=382MB;15264;15269;; /var=218MB;9443;9448"
)
or warn("Failed to parse perfstring");
# Accessors
for $p (@perf) {
printf "label: %s\n", $p->label;
printf "value: %s\n", $p->value;
printf "uom: %s\n", $p->uom;
printf "warning: %s\n", $p->warning;
printf "critical: %s\n", $p->critical;
printf "min: %s\n", $p->min;
printf "max: %s\n", $p->max;
# Special accessor returning a threshold obj containing warning/critical
$threshold = $p->threshold;
}
# Perfdata output format i.e. label=value[uom];[warn];[crit];[min];[max]
print $p->perfoutput;
DESCRIPTION
Nagios::Plugin class for handling performance data. This is a public interface because it could be used by performance graphing routines, such as nagiostat (http://nagiostat.sourceforge.net), perfparse (http://perfparse.sourceforge.net), nagiosgraph (http://nagiosgraph.sourceforge.net) or NagiosGrapher (http://www.nagiosexchange.org/NagiosGrapher.84.0.html).
Nagios::Plugin::Performance offers both a parsing interface (via parse_perfstring), for turning nagios performance output strings into their components, and a composition interface (via new), for turning components into perfdata strings.
CLASS METHODS
- Nagios::Plugin::Performance->new(%attributes)
-
Instantiates a new Nagios::Plugin::Performance object with the given attributes.
- Nagios::Plugin::Performance->parse_perfstring($string)
-
Returns an array of Nagios::Plugin::Performance objects based on the string entered. If there is an error parsing the string, an empty array is returned.
OBJECT METHODS (ACCESSORS)
- label, value, uom, warning, critical, min, max
-
These all return scalars. min and max are not well supported yet.
- threshold
-
Returns a Nagios::Plugin::Threshold object holding the warning and critical ranges for this performance data (if any).
- rrdlabel
-
Returns a string based on 'label' that is suitable for use as dataset name of an RRD i.e. munges label to be 1-19 characters long with only characters [a-zA-Z0-9_].
There is no guarantee that multiple N:P:Performance objects will have unique rrdlabels.
- perfoutput
-
Outputs the data in Nagios::Plugin perfdata format i.e. label=value[uom];[warn];[crit];[min];[max].
SEE ALSO
Nagios::Plugin, Nagios::Plugin::Threshold, http://nagiosplug.sourceforge.net.
AUTHOR
This code is maintained by the Nagios Plugin Development Team: see http://nagiosplug.sourceforge.net.
COPYRIGHT AND LICENSE
Copyright (C) 2006-2007 Nagios Plugin Development Team
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.