diff options
Diffstat (limited to 'nagios-plugins-contrib-24.20190301~bpo9+1/check_hpasm/check_hpasm-4.8/plugins-scripts/HP/Proliant/Component/TemperatureSubsystem/CLI.pm')
-rwxr-xr-x | nagios-plugins-contrib-24.20190301~bpo9+1/check_hpasm/check_hpasm-4.8/plugins-scripts/HP/Proliant/Component/TemperatureSubsystem/CLI.pm | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/nagios-plugins-contrib-24.20190301~bpo9+1/check_hpasm/check_hpasm-4.8/plugins-scripts/HP/Proliant/Component/TemperatureSubsystem/CLI.pm b/nagios-plugins-contrib-24.20190301~bpo9+1/check_hpasm/check_hpasm-4.8/plugins-scripts/HP/Proliant/Component/TemperatureSubsystem/CLI.pm new file mode 100755 index 0000000..9e8e6be --- /dev/null +++ b/nagios-plugins-contrib-24.20190301~bpo9+1/check_hpasm/check_hpasm-4.8/plugins-scripts/HP/Proliant/Component/TemperatureSubsystem/CLI.pm @@ -0,0 +1,56 @@ +package HP::Proliant::Component::TemperatureSubsystem::CLI; +our @ISA = qw(HP::Proliant::Component::TemperatureSubsystem); + +use strict; +use constant { OK => 0, WARNING => 1, CRITICAL => 2, UNKNOWN => 3 }; + +sub new { + my $class = shift; + my %params = @_; + my $self = { + runtime => $params{runtime}, + rawdata => $params{rawdata}, + temperatures => [], + blacklisted => 0, + info => undef, + extendedinfo => undef, + }; + bless $self, $class; + $self->init(%params); + return $self; +} + +sub init { + my $self = shift; + my %params = @_; + my $tempcnt = 1; + foreach (grep(/^temp/, split(/\n/, $params{rawdata}))) { + s/^temp\s*//g; + if (/^#(\d+)\s+([\w_\/\-#]+)\s+(-*\d+)C\/(\d+)F\s+(\d+)C\/(\d+)F/) { + my %params = (); + $params{runtime} = $self->{runtime}; + $params{cpqHeTemperatureChassis} = 1; + $params{cpqHeTemperatureIndex} = $1; + $params{cpqHeTemperatureLocale} = lc $2; + $params{cpqHeTemperatureCelsius} = $3; + $params{cpqHeTemperatureThresholdCelsius} = $5; + $params{cpqHeTemperatureCondition} = 'unknown'; + push(@{$self->{temperatures}}, + HP::Proliant::Component::TemperatureSubsystem::Temperature->new( + %params)); + } elsif (/^#(\d+)\s+([\w_\/\-#]+)\s+\-\s+(\d+)C\/(\d+)F/) { + # #3 CPU#2 - 0C/0F + $self->trace(2, sprintf "skipping temperature %s", $_); + } elsif (/^#(\d+)\s+([\w_\/\-#]+)\s+(\d+)C\/(\d+)F\s+\-/) { + # #3 CPU#2 0C/0F - + $self->trace(2, sprintf "skipping temperature %s", $_); + } elsif (/^#(\d+)\s+([\w_\/\-#]+)\s+\-\s+\-/) { + # #3 CPU#2 - - + $self->trace(2, sprintf "skipping temperature %s", $_); + } elsif (/^#(\d+)/) { + $self->trace(0, sprintf "send this to lausser: %s", $_); + } + } +} + +1; |