(plugin) network::brocade::snmp - use new perfdata (#3933)

This commit is contained in:
qgarnier 2022-09-28 13:20:42 +02:00 committed by GitHub
parent 45818b8a8f
commit f579955ca5
4 changed files with 65 additions and 53 deletions

View File

@ -27,13 +27,12 @@ use warnings;
sub new { sub new {
my ($class, %options) = @_; my ($class, %options) = @_;
my $self = $class->SUPER::new(package => __PACKAGE__, %options); my $self = $class->SUPER::new(package => __PACKAGE__, %options, force_new_perfdata => 1);
bless $self, $class; bless $self, $class;
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ 'warning:s' => { name => 'warning', },
"warning:s" => { name => 'warning', }, 'critical:s' => { name => 'critical' }
"critical:s" => { name => 'critical', },
}); });
return $self; return $self;
@ -70,15 +69,23 @@ sub run {
$self->{output}->option_exit(); $self->{output}->option_exit();
} }
my $exit = $self->{perfdata}->threshold_check(value => $result->{$oid_swCpuUsage}, my $exit = $self->{perfdata}->threshold_check(
threshold => [ { label => 'critical', exit_litteral => 'critical' }, { label => 'warning', exit_litteral => 'warning' } ]); value => $result->{$oid_swCpuUsage},
$self->{output}->output_add(severity => $exit, threshold => [ { label => 'critical', exit_litteral => 'critical' }, { label => 'warning', exit_litteral => 'warning' } ]
short_msg => sprintf("CPU Usage: %.2f%%", $result->{$oid_swCpuUsage})); );
$self->{output}->perfdata_add(label => "cpu", unit => '%', $self->{output}->output_add(
severity => $exit,
short_msg => sprintf("CPU Usage: %.2f%%", $result->{$oid_swCpuUsage})
);
$self->{output}->perfdata_add(
nlabel => 'cpu.utilization.percentage',
unit => '%',
value => $result->{$oid_swCpuUsage}, value => $result->{$oid_swCpuUsage},
warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'),
critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'),
min => 0, max => 100); min => 0,
max => 100
);
$self->{output}->display(); $self->{output}->display();
$self->{output}->exit(); $self->{output}->exit();
@ -105,4 +112,3 @@ Threshold critical in percent.
=back =back
=cut =cut

View File

@ -56,7 +56,7 @@ sub set_system {
sub new { sub new {
my ($class, %options) = @_; my ($class, %options) = @_;
my $self = $class->SUPER::new(package => __PACKAGE__, %options, no_load_components => 1); my $self = $class->SUPER::new(package => __PACKAGE__, %options, no_load_components => 1, force_new_perfdata => 1);
bless $self, $class; bless $self, $class;
$options{options}->add_options(arguments => {}); $options{options}->add_options(arguments => {});
@ -189,8 +189,8 @@ sub check {
} }
$self->{output}->perfdata_add( $self->{output}->perfdata_add(
label => 'sensor', unit => $map_unit{$result->{swSensorType}},
nlabel => 'hardware.sensor.' . $result->{swSensorType} . '.' . $map_unit{$result->{swSensorType}}, nlabel => 'hardware.sensor.' . $result->{swSensorType} . '.' . $map_unit{$result->{swSensorType}},
unit => $map_unit{$result->{swSensorType}},
instances => $result->{swSensorInfo}, instances => $result->{swSensorInfo},
value => $result->{swSensorValue}, value => $result->{swSensorValue},
warning => $warn, warning => $warn,

View File

@ -88,7 +88,7 @@ sub set_counters_errors {
sub new { sub new {
my ($class, %options) = @_; my ($class, %options) = @_;
my $self = $class->SUPER::new(package => __PACKAGE__, %options); my $self = $class->SUPER::new(package => __PACKAGE__, %options, force_new_perdata => 1);
bless $self, $class; bless $self, $class;
$options{options}->add_options(arguments => { $options{options}->add_options(arguments => {

View File

@ -27,13 +27,12 @@ use warnings;
sub new { sub new {
my ($class, %options) = @_; my ($class, %options) = @_;
my $self = $class->SUPER::new(package => __PACKAGE__, %options); my $self = $class->SUPER::new(package => __PACKAGE__, %options, force_new_perfdata => 1);
bless $self, $class; bless $self, $class;
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ 'warning:s' => { name => 'warning', },
"warning:s" => { name => 'warning', }, 'critical:s' => { name => 'critical' }
"critical:s" => { name => 'critical', },
}); });
return $self; return $self;
@ -70,15 +69,23 @@ sub run {
$self->{output}->option_exit(); $self->{output}->option_exit();
} }
my $exit = $self->{perfdata}->threshold_check(value => $result->{$oid_swMemUsage}, my $exit = $self->{perfdata}->threshold_check(
threshold => [ { label => 'critical', exit_litteral => 'critical' }, { label => 'warning', exit_litteral => 'warning' } ]); value => $result->{$oid_swMemUsage},
$self->{output}->output_add(severity => $exit, threshold => [ { label => 'critical', exit_litteral => 'critical' }, { label => 'warning', exit_litteral => 'warning' } ]
short_msg => sprintf("Memory Usage: %.2f%% used", $result->{$oid_swMemUsage})); );
$self->{output}->perfdata_add(label => "used", unit => '%', $self->{output}->output_add(
severity => $exit,
short_msg => sprintf("Memory Usage: %.2f%% used", $result->{$oid_swMemUsage})
);
$self->{output}->perfdata_add(
nlabel => 'memory.usage.percentage',
unit => '%',
value => $result->{$oid_swMemUsage}, value => $result->{$oid_swMemUsage},
warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'),
critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'),
min => 0, max => 100); min => 0,
max => 100
);
$self->{output}->display(); $self->{output}->display();
$self->{output}->exit(); $self->{output}->exit();
@ -105,4 +112,3 @@ Threshold critical in percent.
=back =back
=cut =cut