summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authortonvoon@users.sourceforge.net <tonvoon@users.sourceforge.net>2009-06-05 17:01:22 (GMT)
committerThomas Guyot-Sionnest <dermoth@aei.ca>2009-06-06 06:16:11 (GMT)
commit673108c6cd8c84f72db0ddb2997b96cbe28ba5ea (patch)
treec981e66bd9ab75637a916f60ca955d42bb38f1eb /lib
parentb0ff1e4262fa7f09c9cdb91206b6d2a2a1aa06a7 (diff)
downloadmonitoring-plugin-perl-673108c6cd8c84f72db0ddb2997b96cbe28ba5ea.tar.gz
Fixed parsing when two = signs within the performance data portion
Diffstat (limited to 'lib')
-rw-r--r--lib/Nagios/Plugin.pm2
-rw-r--r--lib/Nagios/Plugin/Functions.pm2
-rw-r--r--lib/Nagios/Plugin/Performance.pm9
3 files changed, 10 insertions, 3 deletions
diff --git a/lib/Nagios/Plugin.pm b/lib/Nagios/Plugin.pm
index bd0d483..98c2896 100644
--- a/lib/Nagios/Plugin.pm
+++ b/lib/Nagios/Plugin.pm
@@ -25,7 +25,7 @@ our @EXPORT_OK = qw(%ERRORS);
25# CPAN stupidly won't index this module without a literal $VERSION here, 25# CPAN stupidly won't index this module without a literal $VERSION here,
26# so we're forced to duplicate it explicitly 26# so we're forced to duplicate it explicitly
27# Make sure you update $Nagios::Plugin::Functions::VERSION too 27# Make sure you update $Nagios::Plugin::Functions::VERSION too
28our $VERSION = "0.32"; 28our $VERSION = "0.33";
29 29
30sub new { 30sub new {
31 my $class = shift; 31 my $class = shift;
diff --git a/lib/Nagios/Plugin/Functions.pm b/lib/Nagios/Plugin/Functions.pm
index 165aafa..9a8272a 100644
--- a/lib/Nagios/Plugin/Functions.pm
+++ b/lib/Nagios/Plugin/Functions.pm
@@ -12,7 +12,7 @@ use Params::Validate qw(:types validate);
12use Math::Calc::Units; 12use Math::Calc::Units;
13 13
14# Remember to update Nagios::Plugins as well 14# Remember to update Nagios::Plugins as well
15our $VERSION = "0.32"; 15our $VERSION = "0.33";
16 16
17our @STATUS_CODES = qw(OK WARNING CRITICAL UNKNOWN DEPENDENT); 17our @STATUS_CODES = qw(OK WARNING CRITICAL UNKNOWN DEPENDENT);
18 18
diff --git a/lib/Nagios/Plugin/Performance.pm b/lib/Nagios/Plugin/Performance.pm
index 6b85dc0..9248fea 100644
--- a/lib/Nagios/Plugin/Performance.pm
+++ b/lib/Nagios/Plugin/Performance.pm
@@ -87,7 +87,14 @@ sub parse_perfstring {
87 # If there is more than 1 equals sign, split it out and parse individually 87 # If there is more than 1 equals sign, split it out and parse individually
88 if (@{[$perfstring =~ /=/g]} > 1) { 88 if (@{[$perfstring =~ /=/g]} > 1) {
89 $perfstring =~ s/^(.*?=.*?)\s//; 89 $perfstring =~ s/^(.*?=.*?)\s//;
90 $obj = $class->_parse($1); 90 if (defined $1) {
91 $obj = $class->_parse($1);
92 } else {
93 # This could occur if perfdata was soemthing=value=
94 # Since this is invalid, we reset the string and continue
95 $perfstring = "";
96 $obj = $class->_parse($perfstring);
97 }
91 } else { 98 } else {
92 $obj = $class->_parse($perfstring); 99 $obj = $class->_parse($perfstring);
93 $perfstring = ""; 100 $perfstring = "";