From b418181dfe80dd75169b6e8a619ac1932155dea2 Mon Sep 17 00:00:00 2001 From: Sven Nierlein Date: Mon, 20 Jan 2014 00:54:34 +0100 Subject: renamed module into Monitoring::Plugin since the complete monitoring team has been renamed, we also rename this module. Signed-off-by: Sven Nierlein --- lib/Nagios/Plugin/Threshold.pm | 134 ----------------------------------------- 1 file changed, 134 deletions(-) delete mode 100644 lib/Nagios/Plugin/Threshold.pm (limited to 'lib/Nagios/Plugin/Threshold.pm') diff --git a/lib/Nagios/Plugin/Threshold.pm b/lib/Nagios/Plugin/Threshold.pm deleted file mode 100644 index 95a089b..0000000 --- a/lib/Nagios/Plugin/Threshold.pm +++ /dev/null @@ -1,134 +0,0 @@ -package Nagios::Plugin::Threshold; - -use 5.006; - -use strict; -use warnings; - -use base qw(Class::Accessor::Fast); -__PACKAGE__->mk_accessors(qw(warning critical)); - -use Nagios::Plugin::Range; -use Nagios::Plugin::Functions qw(:codes nagios_die); -our ($VERSION) = $Nagios::Plugin::Functions::VERSION; - -sub get_status -{ - my ($self, $value) = @_; - - $value = [ $value ] if (ref $value eq ""); - foreach my $v (@$value) { - if ($self->critical->is_set) { - return CRITICAL if $self->critical->check_range($v); - } - } - foreach my $v (@$value) { - if ($self->warning->is_set) { - return WARNING if $self->warning->check_range($v); - } - } - return OK; -} - -sub _inflate -{ - my ($self, $value, $key) = @_; - - # Return an undefined range if $value is undef - return Nagios::Plugin::Range->new if ! defined $value; - - # For refs, check isa N::P::Range - if (ref $value) { - nagios_die("Invalid $key object: type " . ref $value) - unless $value->isa("Nagios::Plugin::Range"); - return $value; - } - - # Another quick exit if $value is an empty string - return Nagios::Plugin::Range->new if $value eq ""; - - # Otherwise parse $value - my $range = Nagios::Plugin::Range->parse_range_string($value); - nagios_die("Cannot parse $key range: '$value'") unless(defined($range)); - return $range; -} - -sub set_thresholds -{ - my ($self, %arg) = @_; - - # Equals new() as a class method - return $self->new(%arg) unless ref $self; - - # On an object, just acts as special mutator - $self->set($_, $arg{$_}) foreach qw(warning critical); -} - -sub set -{ - my $self = shift; - my ($key, $value) = @_; - $self->SUPER::set($key, $self->_inflate($value, $key)); -} - -# Constructor - inflate scalars to N::P::Range objects -sub new -{ - my ($self, %arg) = @_; - $self->SUPER::new({ - map { $_ => $self->_inflate($arg{$_}, $_) } qw(warning critical) - }); -} - -1; - -__END__ - -=head1 NAME - -Nagios::Plugin::Threshold - class for handling Nagios::Plugin thresholds. - -=head1 SYNOPSIS - - # NB: This is an internal Nagios::Plugin class. - # See Nagios::Plugin itself for public interfaces. - - # Constructor - $t = Nagios::Plugin::Threshold->set_thresholds( - warning => $warning_range_string, - critical => $critical_range_string, - ); - - # Value checking - returns CRITICAL if in the critical range, - # WARNING if in the warning range, and OK otherwise - $status = $t->get_status($value); - - # Accessors - return the associated N::P::Range object - $warning_range = $t->warning; - $critical_range = $t->critical; - - -=head1 DESCRIPTION - -Internal Nagios::Plugin class for handling threshold data. See -Nagios::Plugin for public interfaces. - -A threshold object contains (typically) a pair of ranges, associated -with a particular severity e.g. - - warning => range1 - critical => range2 - -=head1 AUTHOR - -This code is maintained by the Nagios Plugin Development Team: see -http://nagiosplug.sourceforge.net. - -=head1 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. - -=cut -- cgit v1.2.3-74-g34f1