cleaning code (WIP)

This commit is contained in:
garnier-quentin 2019-03-26 17:30:51 +01:00
parent bb5c68a29e
commit 23ecc86ed7
38 changed files with 360 additions and 671 deletions

View File

@ -26,20 +26,18 @@ use strict;
use warnings; use warnings;
use centreon::plugins::misc; use centreon::plugins::misc;
my $instance_mode;
sub custom_usage_perfdata { sub custom_usage_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
my $label = 'used'; my $label = 'used';
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
if (defined($instance_mode->{option_results}->{free})) { if (defined($self->{instance_mode}->{option_results}->{free})) {
$label = 'free'; $label = 'free';
$value_perf = $self->{result_values}->{free}; $value_perf = $self->{result_values}->{free};
} }
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$total_options{total} = $self->{result_values}->{total}; $total_options{total} = $self->{result_values}->{total};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -56,10 +54,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
return $exit; return $exit;
@ -113,33 +111,25 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "hostname:s" => { name => 'hostname' },
"hostname:s" => { name => 'hostname' }, "remote" => { name => 'remote' },
"remote" => { name => 'remote' }, "ssh-option:s@" => { name => 'ssh_option' },
"ssh-option:s@" => { name => 'ssh_option' }, "ssh-path:s" => { name => 'ssh_path' },
"ssh-path:s" => { name => 'ssh_path' }, "ssh-command:s" => { name => 'ssh_command', default => 'ssh' },
"ssh-command:s" => { name => 'ssh_command', default => 'ssh' }, "timeout:s" => { name => 'timeout', default => 30 },
"timeout:s" => { name => 'timeout', default => 30 }, "sudo" => { name => 'sudo' },
"sudo" => { name => 'sudo' }, "command:s" => { name => 'command', default => 'vmquery' },
"command:s" => { name => 'command', default => 'vmquery' }, "command-path:s" => { name => 'command_path' },
"command-path:s" => { name => 'command_path' }, "command-options:s" => { name => 'command_options', default => '-a -w' },
"command-options:s" => { name => 'command_options', default => '-a -w' }, "filter-scratch:s" => { name => 'filter_scratch', default => 'scratch' },
"filter-scratch:s" => { name => 'filter_scratch', default => 'scratch' }, "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self; return $self;
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub manage_selection { sub manage_selection {
my ($self, %options) = @_; my ($self, %options) = @_;

View File

@ -25,8 +25,6 @@ use base qw(centreon::plugins::templates::counter);
use strict; use strict;
use warnings; use warnings;
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -62,12 +60,12 @@ sub custom_usage_perfdata {
my $label = 'used_' . $self->{result_values}->{display}; my $label = 'used_' . $self->{result_values}->{display};
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
if (defined($instance_mode->{option_results}->{free})) { if (defined($self->{instance_mode}->{option_results}->{free})) {
$label = 'free_' . $self->{result_values}->{display}; $label = 'free_' . $self->{result_values}->{display};
$value_perf = $self->{result_values}->{free}; $value_perf = $self->{result_values}->{free};
} }
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$total_options{total} = $self->{result_values}->{total}; $total_options{total} = $self->{result_values}->{total};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -84,10 +82,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
return $exit; return $exit;
@ -127,21 +125,14 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self; return $self;
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub manage_selection { sub manage_selection {
my ($self, %options) = @_; my ($self, %options) = @_;

View File

@ -25,8 +25,6 @@ use base qw(centreon::plugins::templates::counter);
use strict; use strict;
use warnings; use warnings;
my $instance_mode;
sub custom_usage_perfdata { sub custom_usage_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -42,10 +40,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{result_values}->{label}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{result_values}->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{result_values}->{label}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{result_values}->{label}, exit_litteral => 'warning' } ]);
return $exit; return $exit;
@ -200,7 +198,6 @@ sub prefix_stats_output {
return "Statistics: "; return "Statistics: ";
} }
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);
@ -208,22 +205,14 @@ sub new {
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self; return $self;
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
my $metrics = { my $metrics = {
used_memory => { label => 'used', display => 'Used' }, used_memory => { label => 'used', display => 'Used' },
used_memory_rss => { label => 'rss', display => 'Rss' }, used_memory_rss => { label => 'rss', display => 'Rss' },

View File

@ -26,8 +26,6 @@ use strict;
use warnings; use warnings;
use Digest::MD5 qw(md5_hex); use Digest::MD5 qw(md5_hex);
my $instance_mode;
sub custom_usage_perfdata { sub custom_usage_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -43,10 +41,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{result_values}->{label}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{result_values}->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{result_values}->{label}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{result_values}->{label}, exit_litteral => 'warning' } ]);
return $exit; return $exit;
@ -224,26 +222,18 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self;
}
sub check_options { return $self;
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
} }
sub manage_selection { sub manage_selection {
my ($self, %options) = @_; my ($self, %options) = @_;
my $result = $options{custom}->get(path => '/v1/cluster/stats/last?interval='.$options{custom}->get_interval()); my $result = $options{custom}->get(path => '/v1/cluster/stats/last?interval=' . $options{custom}->get_interval());
my $result2 = $options{custom}->get(path => '/v1/cluster'); my $result2 = $options{custom}->get(path => '/v1/cluster');
my $result3 = $options{custom}->get(path => '/v1/nodes'); my $result3 = $options{custom}->get(path => '/v1/nodes');

View File

@ -26,8 +26,6 @@ use strict;
use warnings; use warnings;
use Digest::MD5 qw(md5_hex); use Digest::MD5 qw(md5_hex);
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -91,14 +89,14 @@ sub custom_usage_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
my $use_th = 1; my $use_th = 1;
$use_th = 0 if ($instance_mode->{option_results}->{units} eq '%' && $self->{result_values}->{max} <= 0); $use_th = 0 if ($self->{instance_mode}->{option_results}->{units} eq '%' && $self->{result_values}->{max} <= 0);
my $extra_label = ''; my $extra_label = '';
$extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0);
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%' && $self->{result_values}->{max} > 0) { if ($self->{instance_mode}->{option_results}->{units} eq '%' && $self->{result_values}->{max} > 0) {
$total_options{total} = $self->{result_values}->{max}; $total_options{total} = $self->{result_values}->{max};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -116,10 +114,10 @@ sub custom_usage_threshold {
my ($self, %options) = @_; my ($self, %options) = @_;
# Cannot use percent without total # Cannot use percent without total
return 'ok' if ($self->{result_values}->{max} <= 0 && $instance_mode->{option_results}->{units} eq '%'); return 'ok' if ($self->{result_values}->{max} <= 0 && $self->{instance_mode}->{option_results}->{units} eq '%');
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
@ -167,19 +165,12 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, });
});
return $self;
}
sub check_options { return $self;
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
} }
sub manage_selection { sub manage_selection {

View File

@ -26,8 +26,6 @@ use strict;
use warnings; use warnings;
use Digest::MD5 qw(md5_hex); use Digest::MD5 qw(md5_hex);
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -61,14 +59,14 @@ sub custom_usage_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
my $use_th = 1; my $use_th = 1;
$use_th = 0 if ($instance_mode->{option_results}->{units} eq '%' && $self->{result_values}->{max} <= 0); $use_th = 0 if ($self->{instance_mode}->{option_results}->{units} eq '%' && $self->{result_values}->{max} <= 0);
my $extra_label = ''; my $extra_label = '';
$extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0);
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%' && $self->{result_values}->{max} > 0) { if ($self->{instance_mode}->{option_results}->{units} eq '%' && $self->{result_values}->{max} > 0) {
$total_options{total} = $self->{result_values}->{max}; $total_options{total} = $self->{result_values}->{max};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -86,10 +84,10 @@ sub custom_usage_threshold {
my ($self, %options) = @_; my ($self, %options) = @_;
# Cannot use percent without total # Cannot use percent without total
return 'ok' if ($self->{result_values}->{max} <= 0 && $instance_mode->{option_results}->{units} eq '%'); return 'ok' if ($self->{result_values}->{max} <= 0 && $self->{instance_mode}->{option_results}->{units} eq '%');
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
@ -137,19 +135,12 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, });
});
return $self;
}
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self; return $self;
} }
sub manage_selection { sub manage_selection {

View File

@ -26,8 +26,6 @@ use strict;
use warnings; use warnings;
use Digest::MD5 qw(md5_hex); use Digest::MD5 qw(md5_hex);
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -61,14 +59,14 @@ sub custom_usage_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
my $use_th = 1; my $use_th = 1;
$use_th = 0 if ($instance_mode->{option_results}->{units} eq '%' && $self->{result_values}->{max} <= 0); $use_th = 0 if ($self->{instance_mode}->{option_results}->{units} eq '%' && $self->{result_values}->{max} <= 0);
my $extra_label = ''; my $extra_label = '';
$extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0);
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%' && $self->{result_values}->{max} > 0) { if ($self->{instance_mode}->{option_results}->{units} eq '%' && $self->{result_values}->{max} > 0) {
$total_options{total} = $self->{result_values}->{max}; $total_options{total} = $self->{result_values}->{max};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -86,10 +84,10 @@ sub custom_usage_threshold {
my ($self, %options) = @_; my ($self, %options) = @_;
# Cannot use percent without total # Cannot use percent without total
return 'ok' if ($self->{result_values}->{max} <= 0 && $instance_mode->{option_results}->{units} eq '%'); return 'ok' if ($self->{result_values}->{max} <= 0 && $self->{instance_mode}->{option_results}->{units} eq '%');
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
@ -136,19 +134,12 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, });
});
return $self;
}
sub check_options { return $self;
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
} }
sub manage_selection { sub manage_selection {

View File

@ -29,8 +29,6 @@ use Digest::MD5 qw(md5_hex);
use XML::XPath; use XML::XPath;
use URI::Escape; use URI::Escape;
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -69,10 +67,10 @@ sub custom_traffic_perfdata {
} }
my ($warning, $critical); my ($warning, $critical);
if ($instance_mode->{option_results}->{units_traffic} eq '%' && defined($self->{result_values}->{speed})) { if ($self->{instance_mode}->{option_results}->{units_traffic} eq '%' && defined($self->{result_values}->{speed})) {
$warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}, total => $self->{result_values}->{speed}, cast_int => 1); $warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}, total => $self->{result_values}->{speed}, cast_int => 1);
$critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}, total => $self->{result_values}->{speed}, cast_int => 1); $critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}, total => $self->{result_values}->{speed}, cast_int => 1);
} elsif ($instance_mode->{option_results}->{units_traffic} eq 'b/s') { } elsif ($self->{instance_mode}->{option_results}->{units_traffic} eq 'b/s') {
$warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}); $warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label});
$critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}); $critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label});
} }
@ -88,9 +86,9 @@ sub custom_traffic_threshold {
my ($self, %options) = @_; my ($self, %options) = @_;
my $exit = 'ok'; my $exit = 'ok';
if ($instance_mode->{option_results}->{units_traffic} eq '%' && defined($self->{result_values}->{speed})) { if ($self->{instance_mode}->{option_results}->{units_traffic} eq '%' && defined($self->{result_values}->{speed})) {
$exit = $self->{perfdata}->threshold_check(value => $self->{result_values}->{traffic_prct}, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $self->{result_values}->{traffic_prct}, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{label}, exit_litteral => 'warning' } ]);
} elsif ($instance_mode->{option_results}->{units_traffic} eq 'b/s') { } elsif ($self->{instance_mode}->{option_results}->{units_traffic} eq 'b/s') {
$exit = $self->{perfdata}->threshold_check(value => $self->{result_values}->{traffic}, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $self->{result_values}->{traffic}, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{label}, exit_litteral => 'warning' } ]);
} }
return $exit; return $exit;
@ -119,9 +117,9 @@ sub custom_traffic_calc {
$self->{result_values}->{display} = $options{new_datas}->{$self->{instance} . '_display'}; $self->{result_values}->{display} = $options{new_datas}->{$self->{instance} . '_display'};
my $diff_traffic = $options{new_datas}->{$self->{instance} . '_' . $self->{result_values}->{label}} - $options{old_datas}->{$self->{instance} . '_' . $self->{result_values}->{label}}; my $diff_traffic = $options{new_datas}->{$self->{instance} . '_' . $self->{result_values}->{label}} - $options{old_datas}->{$self->{instance} . '_' . $self->{result_values}->{label}};
$self->{result_values}->{traffic} = $diff_traffic / $options{delta_time}; $self->{result_values}->{traffic} = $diff_traffic / $options{delta_time};
if (defined($instance_mode->{option_results}->{'speed_' . $self->{result_values}->{label}}) && $instance_mode->{option_results}->{'speed_' . $self->{result_values}->{label}} =~ /[0-9]/) { if (defined($self->{instance_mode}->{option_results}->{'speed_' . $self->{result_values}->{label}}) && $self->{instance_mode}->{option_results}->{'speed_' . $self->{result_values}->{label}} =~ /[0-9]/) {
$self->{result_values}->{traffic_prct} = $self->{result_values}->{traffic} * 100 / ($instance_mode->{option_results}->{'speed_' . $self->{result_values}->{label}} * 1000 * 1000); $self->{result_values}->{traffic_prct} = $self->{result_values}->{traffic} * 100 / ($self->{instance_mode}->{option_results}->{'speed_' . $self->{result_values}->{label}} * 1000 * 1000);
$self->{result_values}->{speed} = $instance_mode->{option_results}->{'speed_' . $self->{result_values}->{label}} * 1000 * 1000; $self->{result_values}->{speed} = $self->{instance_mode}->{option_results}->{'speed_' . $self->{result_values}->{label}} * 1000 * 1000;
} }
return 0; return 0;
} }
@ -168,7 +166,6 @@ sub check_options {
} }
$self->{http}->set_options(%{$self->{option_results}}); $self->{http}->set_options(%{$self->{option_results}});
$instance_mode = $self;
} }
my %xpath_to_check = ( my %xpath_to_check = (

View File

@ -27,8 +27,6 @@ use warnings;
use Digest::MD5 qw(md5_hex); use Digest::MD5 qw(md5_hex);
use Socket; use Socket;
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -229,12 +227,11 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "filter-sa:s" => { name => 'filter_sa' },
"filter-sa:s" => { name => 'filter_sa' }, });
});
return $self; return $self;
} }

View File

@ -26,8 +26,6 @@ use strict;
use warnings; use warnings;
use Digest::MD5 qw(md5_hex); use Digest::MD5 qw(md5_hex);
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -113,10 +111,10 @@ sub custom_traffic_perfdata {
} }
my ($warning, $critical); my ($warning, $critical);
if ($instance_mode->{option_results}->{units_traffic} eq '%' && defined($self->{result_values}->{total})) { if ($self->{instance_mode}->{option_results}->{units_traffic} eq '%' && defined($self->{result_values}->{total})) {
$warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}, total => $self->{result_values}->{total}, cast_int => 1); $warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}, total => $self->{result_values}->{total}, cast_int => 1);
$critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}, total => $self->{result_values}->{total}, cast_int => 1); $critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}, total => $self->{result_values}->{total}, cast_int => 1);
} elsif ($instance_mode->{option_results}->{units_traffic} eq 'b/s') { } elsif ($self->{instance_mode}->{option_results}->{units_traffic} eq 'b/s') {
$warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}); $warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label});
$critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}); $critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label});
} }
@ -132,9 +130,9 @@ sub custom_traffic_threshold {
my ($self, %options) = @_; my ($self, %options) = @_;
my $exit = 'ok'; my $exit = 'ok';
if ($instance_mode->{option_results}->{units_traffic} eq '%' && defined($self->{result_values}->{total})) { if ($self->{instance_mode}->{option_results}->{units_traffic} eq '%' && defined($self->{result_values}->{total})) {
$exit = $self->{perfdata}->threshold_check(value => $self->{result_values}->{traffic_prct}, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $self->{result_values}->{traffic_prct}, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{label}, exit_litteral => 'warning' } ]);
} elsif ($instance_mode->{option_results}->{units_traffic} eq 'b/s') { } elsif ($self->{instance_mode}->{option_results}->{units_traffic} eq 'b/s') {
$exit = $self->{perfdata}->threshold_check(value => $self->{result_values}->{traffic_per_seconds}, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $self->{result_values}->{traffic_per_seconds}, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{label}, exit_litteral => 'warning' } ]);
} }
return $exit; return $exit;
@ -184,14 +182,13 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-source:s" => { name => 'filter_source' },
"filter-source:s" => { name => 'filter_source' }, "oid-filter:s" => { name => 'oid_filter', default => 'ifname' },
"oid-filter:s" => { name => 'oid_filter', default => 'ifname' }, "oid-display:s" => { name => 'oid_display', default => 'ifname' },
"oid-display:s" => { name => 'oid_display', default => 'ifname' }, "units-traffic:s" => { name => 'units_traffic', default => '%' },
"units-traffic:s" => { name => 'units_traffic', default => '%' }, });
});
return $self; return $self;
} }
@ -205,7 +202,6 @@ sub check_options {
'ifname' => '.1.3.6.1.2.1.31.1.1.1.1', 'ifname' => '.1.3.6.1.2.1.31.1.1.1.1',
}; };
$self->check_oids_label(); $self->check_oids_label();
$instance_mode = $self;
} }
sub check_oids_label { sub check_oids_label {

View File

@ -27,8 +27,6 @@ use warnings;
use centreon::plugins::misc; use centreon::plugins::misc;
use Digest::MD5 qw(md5_hex); use Digest::MD5 qw(md5_hex);
my $instance_mode;
my @states = ( my @states = (
['^enabled$' , 'OK'], ['^enabled$' , 'OK'],
['^binding$' , 'OK'], ['^binding$' , 'OK'],
@ -170,22 +168,14 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-raidgroupid:s" => { name => 'filter_raidgroupid', },
"filter-raidgroupid:s" => { name => 'filter_raidgroupid', }, "filter-disk:s" => { name => 'filter_disk', },
"filter-disk:s" => { name => 'filter_disk', }, });
});
return $self; return $self;
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub manage_selection { sub manage_selection {
my ($self, %options) = @_; my ($self, %options) = @_;

View File

@ -55,17 +55,15 @@ sub set_counters {
]; ];
} }
my $instance_mode;
sub custom_usage_perfdata { sub custom_usage_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
my $use_th = 1; my $use_th = 1;
$use_th = 0 if ($instance_mode->{option_results}->{units} eq '%' && $self->{result_values}->{max} <= 0); $use_th = 0 if ($self->{instance_mode}->{option_results}->{units} eq '%' && $self->{result_values}->{max} <= 0);
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%' && $self->{result_values}->{max} > 0) { if ($self->{instance_mode}->{option_results}->{units} eq '%' && $self->{result_values}->{max} > 0) {
$total_options{total} = $self->{result_values}->{max}; $total_options{total} = $self->{result_values}->{max};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -81,10 +79,10 @@ sub custom_usage_threshold {
my ($self, %options) = @_; my ($self, %options) = @_;
# Cannot use percent without total # Cannot use percent without total
return 'ok' if ($self->{result_values}->{max} <= 0 && $instance_mode->{option_results}->{units} eq '%'); return 'ok' if ($self->{result_values}->{max} <= 0 && $self->{instance_mode}->{option_results}->{units} eq '%');
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
@ -130,18 +128,11 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, });
});
return $self;
}
sub check_options { return $self;
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
} }
sub manage_selection { sub manage_selection {

View File

@ -44,8 +44,6 @@ my %mapping_memory = (
'Tenured Gen' => 'tenured', 'Tenured Gen' => 'tenured',
); );
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -101,11 +99,11 @@ sub custom_usage_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
my $use_th = 1; my $use_th = 1;
$use_th = 0 if ($instance_mode->{option_results}->{units} eq '%' && $self->{result_values}->{max} <= 0); $use_th = 0 if ($self->{instance_mode}->{option_results}->{units} eq '%' && $self->{result_values}->{max} <= 0);
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%' && $self->{result_values}->{max} > 0) { if ($self->{instance_mode}->{option_results}->{units} eq '%' && $self->{result_values}->{max} > 0) {
$total_options{total} = $self->{result_values}->{max}; $total_options{total} = $self->{result_values}->{max};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -121,10 +119,10 @@ sub custom_usage_threshold {
my ($self, %options) = @_; my ($self, %options) = @_;
# Cannot use percent without total # Cannot use percent without total
return 'ok' if ($self->{result_values}->{max} <= 0 && $instance_mode->{option_results}->{units} eq '%'); return 'ok' if ($self->{result_values}->{max} <= 0 && $self->{instance_mode}->{option_results}->{units} eq '%');
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
@ -177,18 +175,11 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, });
});
return $self;
}
sub check_options { return $self;
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
} }
sub manage_selection { sub manage_selection {

View File

@ -27,8 +27,6 @@ use warnings;
use Digest::MD5 qw(md5_hex); use Digest::MD5 qw(md5_hex);
use DateTime; use DateTime;
my $instance_mode;
sub custom_memory_output { sub custom_memory_output {
my ($self, %options) = @_; my ($self, %options) = @_;
my ($total_size_value, $total_size_unit) = $self->{perfdata}->change_bytes(value => $self->{result_values}->{memory_total_absolute}); my ($total_size_value, $total_size_unit) = $self->{perfdata}->change_bytes(value => $self->{result_values}->{memory_total_absolute});
@ -136,15 +134,14 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "container-id:s" => { name => 'container_id' },
"container-id:s" => { name => 'container_id' }, "container-name:s" => { name => 'container_name' },
"container-name:s" => { name => 'container_name' }, "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "use-name" => { name => 'use_name' },
"use-name" => { name => 'use_name' }, "warning-container-status:s" => { name => 'warning_container_status', default => '' },
"warning-container-status:s" => { name => 'warning_container_status', default => '' }, "critical-container-status:s" => { name => 'critical_container_status', default => '' },
"critical-container-status:s" => { name => 'critical_container_status', default => '' }, });
});
return $self; return $self;
} }
@ -153,8 +150,7 @@ sub check_options {
my ($self, %options) = @_; my ($self, %options) = @_;
$self->SUPER::check_options(%options); $self->SUPER::check_options(%options);
$instance_mode = $self; $self->change_macros(macros => ['warning_container_status', 'critical_container_status']);
$self->change_macros();
} }
sub prefix_containers_output { sub prefix_containers_output {
@ -162,16 +158,6 @@ sub prefix_containers_output {
return "Container '" . $options{instance_value}->{display} . "' "; return "Container '" . $options{instance_value}->{display} . "' ";
} }
sub change_macros {
my ($self, %options) = @_;
foreach (('warning_container_status', 'critical_container_status')) {
if (defined($self->{option_results}->{$_})) {
$self->{option_results}->{$_} =~ s/%\{(.*?)\}/\$self->{result_values}->{$1}/g;
}
}
}
sub manage_selection { sub manage_selection {
my ($self, %options) = @_; my ($self, %options) = @_;

View File

@ -27,8 +27,6 @@ use warnings;
use Digest::MD5 qw(md5_hex); use Digest::MD5 qw(md5_hex);
use DateTime; use DateTime;
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -66,13 +64,12 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "container-id:s" => { name => 'container_id' },
"container-id:s" => { name => 'container_id' }, "container-name:s" => { name => 'container_name' },
"container-name:s" => { name => 'container_name' }, "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "use-name" => { name => 'use_name' },
"use-name" => { name => 'use_name' }, });
});
return $self; return $self;
} }

View File

@ -26,21 +26,19 @@ use strict;
use warnings; use warnings;
use centreon::plugins::misc; use centreon::plugins::misc;
my $instance_mode;
sub custom_usage_perfdata { sub custom_usage_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
my $label = 'used'; my $label = 'used';
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
if (defined($instance_mode->{option_results}->{free})) { if (defined($self->{instance_mode}->{option_results}->{free})) {
$label = 'free'; $label = 'free';
$value_perf = $self->{result_values}->{free}; $value_perf = $self->{result_values}->{free};
} }
my $extra_label = ''; my $extra_label = '';
$extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0);
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$total_options{total} = $self->{result_values}->{total}; $total_options{total} = $self->{result_values}->{total};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -57,10 +55,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
return $exit; return $exit;
@ -135,23 +133,15 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self; return $self;
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub prefix_container_output { sub prefix_container_output {
my ($self, %options) = @_; my ($self, %options) = @_;

View File

@ -26,8 +26,6 @@ use strict;
use warnings; use warnings;
use centreon::plugins::misc; use centreon::plugins::misc;
my $instance_mode;
sub custom_usage_perfdata { sub custom_usage_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -140,21 +138,13 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, });
});
return $self; return $self;
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub prefix_hypervisor_output { sub prefix_hypervisor_output {
my ($self, %options) = @_; my ($self, %options) = @_;

View File

@ -26,21 +26,19 @@ use strict;
use warnings; use warnings;
use centreon::plugins::misc; use centreon::plugins::misc;
my $instance_mode;
sub custom_usage_perfdata { sub custom_usage_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
my $label = 'used'; my $label = 'used';
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
if (defined($instance_mode->{option_results}->{free})) { if (defined($self->{instance_mode}->{option_results}->{free})) {
$label = 'free'; $label = 'free';
$value_perf = $self->{result_values}->{free}; $value_perf = $self->{result_values}->{free};
} }
my $extra_label = ''; my $extra_label = '';
$extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0);
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$total_options{total} = $self->{result_values}->{total}; $total_options{total} = $self->{result_values}->{total};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -57,10 +55,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
return $exit; return $exit;
@ -135,23 +133,15 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self; return $self;
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub prefix_sp_output { sub prefix_sp_output {
my ($self, %options) = @_; my ($self, %options) = @_;

View File

@ -27,8 +27,6 @@ use warnings;
use centreon::plugins::misc; use centreon::plugins::misc;
use Digest::MD5 qw(md5_hex); use Digest::MD5 qw(md5_hex);
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -102,21 +100,13 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, });
});
return $self; return $self;
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub prefix_vm_output { sub prefix_vm_output {
my ($self, %options) = @_; my ($self, %options) = @_;

View File

@ -25,8 +25,6 @@ use base qw(centreon::plugins::templates::counter);
use strict; use strict;
use warnings; use warnings;
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -51,14 +49,14 @@ sub custom_usage_perfdata {
my $label = 'used'; my $label = 'used';
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
if (defined($instance_mode->{option_results}->{free})) { if (defined($self->{instance_mode}->{option_results}->{free})) {
$label = 'free'; $label = 'free';
$value_perf = $self->{result_values}->{free}; $value_perf = $self->{result_values}->{free};
} }
my $extra_label = ''; my $extra_label = '';
$extra_label = '_' . lc($self->{result_values}->{display}) if (!defined($options{extra_instance}) || $options{extra_instance} != 0); $extra_label = '_' . lc($self->{result_values}->{display}) if (!defined($options{extra_instance}) || $options{extra_instance} != 0);
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$total_options{total} = $self->{result_values}->{total}; $total_options{total} = $self->{result_values}->{total};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -75,10 +73,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, $exit = $self->{perfdata}->threshold_check(value => $threshold_value,
threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' },
@ -118,12 +116,12 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-database:s" => { name => 'filter_database' },
"filter-database:s" => { name => 'filter_database' }, "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self; return $self;
} }
@ -133,13 +131,6 @@ sub prefix_database_output {
return "Database '" . $options{instance_value}->{display} . "' "; return "Database '" . $options{instance_value}->{display} . "' ";
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub manage_selection { sub manage_selection {
my ($self, %options) = @_; my ($self, %options) = @_;

View File

@ -25,8 +25,6 @@ use base qw(centreon::plugins::templates::counter);
use strict; use strict;
use warnings; use warnings;
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -51,12 +49,12 @@ sub custom_usage_perfdata {
my $label = 'log_' . lc($self->{result_values}->{display}) . '_used'; my $label = 'log_' . lc($self->{result_values}->{display}) . '_used';
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
if (defined($instance_mode->{option_results}->{free})) { if (defined($self->{instance_mode}->{option_results}->{free})) {
$label = 'log_' . lc($self->{result_values}->{display}) . '_free'; $label = 'log_' . lc($self->{result_values}->{display}) . '_free';
$value_perf = $self->{result_values}->{free}; $value_perf = $self->{result_values}->{free};
} }
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$total_options{total} = $self->{result_values}->{total}; $total_options{total} = $self->{result_values}->{total};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -73,10 +71,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, $exit = $self->{perfdata}->threshold_check(value => $threshold_value,
threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' },
@ -116,12 +114,12 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-log:s" => { name => 'filter_log' },
"filter-log:s" => { name => 'filter_log' }, "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self; return $self;
} }
@ -131,13 +129,6 @@ sub prefix_log_output {
return "Log '" . $options{instance_value}->{display} . "' "; return "Log '" . $options{instance_value}->{display} . "' ";
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub manage_selection { sub manage_selection {
my ($self, %options) = @_; my ($self, %options) = @_;

View File

@ -25,8 +25,6 @@ use base qw(centreon::plugins::templates::counter);
use strict; use strict;
use warnings; use warnings;
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -51,14 +49,14 @@ sub custom_usage_perfdata {
my $label = 'tbs_' . $self->{result_values}->{display} . '_usage'; my $label = 'tbs_' . $self->{result_values}->{display} . '_usage';
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
if (defined($instance_mode->{option_results}->{free})) { if (defined($self->{instance_mode}->{option_results}->{free})) {
$label = 'tbs_' . $self->{result_values}->{display} . '_free'; $label = 'tbs_' . $self->{result_values}->{display} . '_free';
$value_perf = $self->{result_values}->{free}; $value_perf = $self->{result_values}->{free};
} }
my $extra_label = ''; my $extra_label = '';
$extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0);
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$total_options{total} = $self->{result_values}->{total}; $total_options{total} = $self->{result_values}->{total};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -75,10 +73,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
return $exit; return $exit;
@ -117,13 +115,13 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-tablespace:s" => { name => 'filter_tablespace' },
"filter-tablespace:s" => { name => 'filter_tablespace' }, "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, "skip" => { name => 'skip' },
"skip" => { name => 'skip' }, });
});
return $self; return $self;
} }
@ -133,13 +131,6 @@ sub prefix_tablespace_output {
return "Tablespace '" . $options{instance_value}->{display} . "' "; return "Tablespace '" . $options{instance_value}->{display} . "' ";
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub manage_selection { sub manage_selection {
my ($self, %options) = @_; my ($self, %options) = @_;
# $options{sql} = sqlmode object # $options{sql} = sqlmode object

View File

@ -26,20 +26,18 @@ use strict;
use warnings; use warnings;
use Digest::MD5 qw(md5_hex); use Digest::MD5 qw(md5_hex);
my $instance_mode;
sub custom_usage_perfdata { sub custom_usage_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
my $label = 'used'; my $label = 'used';
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
if (defined($instance_mode->{option_results}->{free})) { if (defined($self->{instance_mode}->{option_results}->{free})) {
$label = 'free'; $label = 'free';
$value_perf = $self->{result_values}->{free}; $value_perf = $self->{result_values}->{free};
} }
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$total_options{total} = $self->{result_values}->{total}; $total_options{total} = $self->{result_values}->{total};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -56,10 +54,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
return $exit; return $exit;
@ -114,26 +112,18 @@ sub prefix_tablespace_output {
sub new { sub new {
my ($class, %options) = @_; my ($class, %options) = @_;
my $self = $class->SUPER::new(package => __PACKAGE__, %options, statefile => 0); my $self = $class->SUPER::new(package => __PACKAGE__, %options);
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self; return $self;
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub manage_selection { sub manage_selection {
my ($self, %options) = @_; my ($self, %options) = @_;
$self->{sql} = $options{sql}; $self->{sql} = $options{sql};

View File

@ -26,20 +26,18 @@ use strict;
use warnings; use warnings;
use Digest::MD5 qw(md5_hex); use Digest::MD5 qw(md5_hex);
my $instance_mode;
sub custom_usage_perfdata { sub custom_usage_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
my $label = 'used'; my $label = 'used';
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
if (defined($instance_mode->{option_results}->{free})) { if (defined($self->{instance_mode}->{option_results}->{free})) {
$label = 'free'; $label = 'free';
$value_perf = $self->{result_values}->{free}; $value_perf = $self->{result_values}->{free};
} }
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$total_options{total} = $self->{result_values}->{total}; $total_options{total} = $self->{result_values}->{total};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -56,10 +54,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
return $exit; return $exit;
@ -114,26 +112,18 @@ sub prefix_tablespace_output {
sub new { sub new {
my ($class, %options) = @_; my ($class, %options) = @_;
my $self = $class->SUPER::new(package => __PACKAGE__, %options, statefile => 0); my $self = $class->SUPER::new(package => __PACKAGE__, %options);
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self; return $self;
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub manage_selection { sub manage_selection {
my ($self, %options) = @_; my ($self, %options) = @_;
$self->{sql} = $options{sql}; $self->{sql} = $options{sql};

View File

@ -25,8 +25,6 @@ use base qw(centreon::plugins::templates::counter);
use strict; use strict;
use warnings; use warnings;
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -51,14 +49,14 @@ sub custom_usage_perfdata {
my $label = 'used_' . $self->{result_values}->{display}; my $label = 'used_' . $self->{result_values}->{display};
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
if (defined($instance_mode->{option_results}->{free})) { if (defined($self->{instance_mode}->{option_results}->{free})) {
$label = 'free_' . $self->{result_values}->{display}; $label = 'free_' . $self->{result_values}->{display};
$value_perf = $self->{result_values}->{free}; $value_perf = $self->{result_values}->{free};
} }
my $extra_label = ''; my $extra_label = '';
$extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0);
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$total_options{total} = $self->{result_values}->{total}; $total_options{total} = $self->{result_values}->{total};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -75,10 +73,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
return $exit; return $exit;
@ -117,12 +115,12 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self; return $self;
} }
@ -132,13 +130,6 @@ sub prefix_disk_output {
return "Disk '" . $options{instance_value}->{display} . "' "; return "Disk '" . $options{instance_value}->{display} . "' ";
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub manage_selection { sub manage_selection {
my ($self, %options) = @_; my ($self, %options) = @_;
$options{sql}->connect(); $options{sql}->connect();

View File

@ -25,8 +25,6 @@ use base qw(centreon::plugins::templates::counter);
use strict; use strict;
use warnings; use warnings;
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -51,14 +49,14 @@ sub custom_usage_perfdata {
my $label = 'used_' . $self->{result_values}->{display}; my $label = 'used_' . $self->{result_values}->{display};
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
if (defined($instance_mode->{option_results}->{free})) { if (defined($self->{instance_mode}->{option_results}->{free})) {
$label = 'free_' . $self->{result_values}->{display}; $label = 'free_' . $self->{result_values}->{display};
$value_perf = $self->{result_values}->{free}; $value_perf = $self->{result_values}->{free};
} }
my $extra_label = ''; my $extra_label = '';
$extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0);
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$total_options{total} = $self->{result_values}->{total}; $total_options{total} = $self->{result_values}->{total};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -75,10 +73,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
return $exit; return $exit;
@ -117,12 +115,12 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self; return $self;
} }
@ -132,13 +130,6 @@ sub prefix_volume_output {
return "Volume '" . $options{instance_value}->{display} . "' "; return "Volume '" . $options{instance_value}->{display} . "' ";
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub manage_selection { sub manage_selection {
my ($self, %options) = @_; my ($self, %options) = @_;
$options{sql}->connect(); $options{sql}->connect();

View File

@ -25,8 +25,6 @@ use base qw(centreon::plugins::templates::counter);
use strict; use strict;
use warnings; use warnings;
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -59,14 +57,14 @@ sub custom_usage_perfdata {
my $label = $self->{result_values}->{label} . '_used'; my $label = $self->{result_values}->{label} . '_used';
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
if (defined($instance_mode->{option_results}->{free})) { if (defined($self->{instance_mode}->{option_results}->{free})) {
$label = $self->{result_values}->{label} . '_free'; $label = $self->{result_values}->{label} . '_free';
$value_perf = $self->{result_values}->{free}; $value_perf = $self->{result_values}->{free};
} }
my $extra_label = ''; my $extra_label = '';
$extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0);
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$total_options{total} = $self->{result_values}->{total}; $total_options{total} = $self->{result_values}->{total};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -83,10 +81,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
return $exit; return $exit;
@ -127,12 +125,12 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-database:s" => { name => 'filter_database' },
"filter-database:s" => { name => 'filter_database' }, "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self; return $self;
} }
@ -142,13 +140,6 @@ sub prefix_database_output {
return "Database '" . $options{instance_value}->{display} . "' "; return "Database '" . $options{instance_value}->{display} . "' ";
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub manage_selection { sub manage_selection {
my ($self, %options) = @_; my ($self, %options) = @_;

View File

@ -25,8 +25,6 @@ use base qw(centreon::plugins::templates::counter);
use strict; use strict;
use warnings; use warnings;
my $instance_mode;
sub custom_temperature_perfdata { sub custom_temperature_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -62,14 +60,14 @@ sub custom_sensor_threshold {
my ($self, %options) = @_; my ($self, %options) = @_;
my $warn_limit; my $warn_limit;
if (defined($instance_mode->{option_results}->{'warning-' . $self->{label}}) && $instance_mode->{option_results}->{'warning-' . $self->{label}} ne '') { if (defined($self->{instance_mode}->{option_results}->{'warning-' . $self->{label}}) && $self->{instance_mode}->{option_results}->{'warning-' . $self->{label}} ne '') {
$warn_limit = $instance_mode->{option_results}->{'warning-' . $self->{label}}; $warn_limit = $self->{instance_mode}->{option_results}->{'warning-' . $self->{label}};
} }
$self->{perfdata}->threshold_validate(label => 'warning-' . $self->{label} . '_' . $self->{result_values}->{display_absolute}, value => $warn_limit); $self->{perfdata}->threshold_validate(label => 'warning-' . $self->{label} . '_' . $self->{result_values}->{display_absolute}, value => $warn_limit);
my $crit_limit = $self->{result_values}->{limit_lo_absolute} . ':' . $self->{result_values}->{limit_hi_absolute}; my $crit_limit = $self->{result_values}->{limit_lo_absolute} . ':' . $self->{result_values}->{limit_hi_absolute};
if (defined($instance_mode->{option_results}->{'critical-' . $self->{label}}) && $instance_mode->{option_results}->{'critical-' . $self->{label}} ne '') { if (defined($self->{instance_mode}->{option_results}->{'critical-' . $self->{label}}) && $self->{instance_mode}->{option_results}->{'critical-' . $self->{label}} ne '') {
$crit_limit = $instance_mode->{option_results}->{'critical-' . $self->{label}}; $crit_limit = $self->{instance_mode}->{option_results}->{'critical-' . $self->{label}};
} }
$self->{perfdata}->threshold_validate(label => 'critical-' . $self->{label} . '_' . $self->{result_values}->{display_absolute}, value => $crit_limit); $self->{perfdata}->threshold_validate(label => 'critical-' . $self->{label} . '_' . $self->{result_values}->{display_absolute}, value => $crit_limit);
@ -110,20 +108,12 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ });
});
return $self; return $self;
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub prefix_channel_output { sub prefix_channel_output {
my ($self, %options) = @_; my ($self, %options) = @_;

View File

@ -25,21 +25,19 @@ use base qw(centreon::plugins::templates::counter);
use strict; use strict;
use warnings; use warnings;
my $instance_mode;
sub custom_usage_perfdata { sub custom_usage_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
my $label = 'used'; my $label = 'used';
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
if (defined($instance_mode->{option_results}->{free})) { if (defined($self->{instance_mode}->{option_results}->{free})) {
$label = 'free'; $label = 'free';
$value_perf = $self->{result_values}->{free}; $value_perf = $self->{result_values}->{free};
} }
my $extra_label = ''; my $extra_label = '';
$extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0);
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$total_options{total} = $self->{result_values}->{total}; $total_options{total} = $self->{result_values}->{total};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -56,10 +54,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
return $exit; return $exit;
@ -116,23 +114,15 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self; return $self;
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub prefix_memory_output { sub prefix_memory_output {
my ($self, %options) = @_; my ($self, %options) = @_;

View File

@ -25,8 +25,6 @@ use base qw(centreon::plugins::templates::counter);
use strict; use strict;
use warnings; use warnings;
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -51,14 +49,14 @@ sub custom_usage_perfdata {
my $label = 'used'; my $label = 'used';
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
if (defined($instance_mode->{option_results}->{free})) { if (defined($self->{instance_mode}->{option_results}->{free})) {
$label = 'free'; $label = 'free';
$value_perf = $self->{result_values}->{free}; $value_perf = $self->{result_values}->{free};
} }
my $extra_label = ''; my $extra_label = '';
$extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0);
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$total_options{total} = $self->{result_values}->{total}; $total_options{total} = $self->{result_values}->{total};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -75,10 +73,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
return $exit; return $exit;
@ -122,23 +120,15 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self; return $self;
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
my $mapping = { my $mapping = {
sysHealthDiskName => { oid => '.1.3.6.1.4.1.5951.4.1.1.41.8.1.1' }, sysHealthDiskName => { oid => '.1.3.6.1.4.1.5951.4.1.1.41.8.1.1' },
sysHealthDiskSize => { oid => '.1.3.6.1.4.1.5951.4.1.1.41.8.1.2' }, # in MB sysHealthDiskSize => { oid => '.1.3.6.1.4.1.5951.4.1.1.41.8.1.2' }, # in MB

View File

@ -26,8 +26,6 @@ use strict;
use warnings; use warnings;
use Digest::MD5 qw(md5_hex); use Digest::MD5 qw(md5_hex);
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -158,13 +156,12 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "filter-type:s" => { name => 'filter_type' },
"filter-type:s" => { name => 'filter_type' }, "threshold-overload:s@" => { name => 'threshold_overload' },
"threshold-overload:s@" => { name => 'threshold_overload' }, });
});
return $self; return $self;
} }

View File

@ -26,21 +26,19 @@ use strict;
use warnings; use warnings;
use Digest::MD5 qw(md5_hex); use Digest::MD5 qw(md5_hex);
my $instance_mode;
sub custom_usage_perfdata { sub custom_usage_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
my $label = 'used'; my $label = 'used';
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
if (defined($instance_mode->{option_results}->{free})) { if (defined($self->{instance_mode}->{option_results}->{free})) {
$label = 'free'; $label = 'free';
$value_perf = $self->{result_values}->{free}; $value_perf = $self->{result_values}->{free};
} }
my $extra_label = ''; my $extra_label = '';
$extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0);
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$total_options{total} = $self->{result_values}->{total}; $total_options{total} = $self->{result_values}->{total};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -57,10 +55,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
return $exit; return $exit;
@ -137,23 +135,15 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self; return $self;
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub prefix_disk_output { sub prefix_disk_output {
my ($self, %options) = @_; my ($self, %options) = @_;

View File

@ -25,21 +25,19 @@ use base qw(centreon::plugins::templates::counter);
use strict; use strict;
use warnings; use warnings;
my $instance_mode;
sub custom_usage_perfdata { sub custom_usage_perfdata {
my ($self, %options) = @_; my ($self, %options) = @_;
my $label = 'memory_used'; my $label = 'memory_used';
my $value_perf = $self->{result_values}->{used}; my $value_perf = $self->{result_values}->{used};
if (defined($instance_mode->{option_results}->{free})) { if (defined($self->{instance_mode}->{option_results}->{free})) {
$label = 'memory_free'; $label = 'memory_free';
$value_perf = $self->{result_values}->{free}; $value_perf = $self->{result_values}->{free};
} }
my $extra_label = ''; my $extra_label = '';
$extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0);
my %total_options = (); my %total_options = ();
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$total_options{total} = $self->{result_values}->{total}; $total_options{total} = $self->{result_values}->{total};
$total_options{cast_int} = 1; $total_options{cast_int} = 1;
} }
@ -56,10 +54,10 @@ sub custom_usage_threshold {
my ($exit, $threshold_value); my ($exit, $threshold_value);
$threshold_value = $self->{result_values}->{used}; $threshold_value = $self->{result_values}->{used};
$threshold_value = $self->{result_values}->{free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{free} if (defined($self->{instance_mode}->{option_results}->{free}));
if ($instance_mode->{option_results}->{units} eq '%') { if ($self->{instance_mode}->{option_results}->{units} eq '%') {
$threshold_value = $self->{result_values}->{prct_used}; $threshold_value = $self->{result_values}->{prct_used};
$threshold_value = $self->{result_values}->{prct_free} if (defined($instance_mode->{option_results}->{free})); $threshold_value = $self->{result_values}->{prct_free} if (defined($self->{instance_mode}->{option_results}->{free}));
} }
$exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $threshold_value, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{label}, exit_litteral => 'warning' } ]);
return $exit; return $exit;
@ -125,23 +123,15 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "units:s" => { name => 'units', default => '%' },
"units:s" => { name => 'units', default => '%' }, "free" => { name => 'free' },
"free" => { name => 'free' }, });
});
return $self; return $self;
} }
sub check_options {
my ($self, %options) = @_;
$self->SUPER::check_options(%options);
$instance_mode = $self;
}
sub prefix_disk_output { sub prefix_disk_output {
my ($self, %options) = @_; my ($self, %options) = @_;

View File

@ -35,12 +35,11 @@ my $thresholds = {
['gray', 'UNKNOWN'], ['gray', 'UNKNOWN'],
], ],
}; };
my $instance_mode;
sub custom_threshold_output { sub custom_threshold_output {
my ($self, %options) = @_; my ($self, %options) = @_;
return $instance_mode->get_severity(section => 'node', value => $self->{result_values}->{AvailState}); return $self->{instance_mode}->get_severity(section => 'node', value => $self->{result_values}->{AvailState});
} }
sub custom_status_calc { sub custom_status_calc {
@ -90,11 +89,10 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "threshold-overload:s@" => { name => 'threshold_overload' },
"threshold-overload:s@" => { name => 'threshold_overload' }, });
});
return $self; return $self;
} }
@ -102,9 +100,7 @@ sub new {
sub check_options { sub check_options {
my ($self, %options) = @_; my ($self, %options) = @_;
$self->SUPER::check_options(%options); $self->SUPER::check_options(%options);
$instance_mode = $self;
$self->{overload_th} = {}; $self->{overload_th} = {};
foreach my $val (@{$self->{option_results}->{threshold_overload}}) { foreach my $val (@{$self->{option_results}->{threshold_overload}}) {
if ($val !~ /^(.*?),(.*?),(.*)$/) { if ($val !~ /^(.*?),(.*?),(.*)$/) {

View File

@ -35,12 +35,11 @@ my $thresholds = {
['gray', 'UNKNOWN'], ['gray', 'UNKNOWN'],
], ],
}; };
my $instance_mode;
sub custom_threshold_output { sub custom_threshold_output {
my ($self, %options) = @_; my ($self, %options) = @_;
return $instance_mode->get_severity(section => 'pool', value => $self->{result_values}->{AvailState}); return $self->{instance_mode}->get_severity(section => 'pool', value => $self->{result_values}->{AvailState});
} }
sub custom_status_calc { sub custom_status_calc {
@ -90,11 +89,10 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "threshold-overload:s@" => { name => 'threshold_overload' },
"threshold-overload:s@" => { name => 'threshold_overload' }, });
});
return $self; return $self;
} }
@ -102,9 +100,7 @@ sub new {
sub check_options { sub check_options {
my ($self, %options) = @_; my ($self, %options) = @_;
$self->SUPER::check_options(%options); $self->SUPER::check_options(%options);
$instance_mode = $self;
$self->{overload_th} = {}; $self->{overload_th} = {};
foreach my $val (@{$self->{option_results}->{threshold_overload}}) { foreach my $val (@{$self->{option_results}->{threshold_overload}}) {
if ($val !~ /^(.*?),(.*?),(.*)$/) { if ($val !~ /^(.*?),(.*?),(.*)$/) {

View File

@ -26,8 +26,6 @@ use strict;
use warnings; use warnings;
use Digest::MD5 qw(md5_hex); use Digest::MD5 qw(md5_hex);
my $instance_mode;
my $thresholds = { my $thresholds = {
trunk => [ trunk => [
['up', 'OK'], ['up', 'OK'],
@ -42,7 +40,7 @@ my $thresholds = {
sub custom_threshold_output { sub custom_threshold_output {
my ($self, %options) = @_; my ($self, %options) = @_;
return $instance_mode->get_severity(section => 'trunk', value => $self->{result_values}->{sysTrunkStatus}); return $self->{instance_mode}->get_severity(section => 'trunk', value => $self->{result_values}->{sysTrunkStatus});
} }
sub custom_status_calc { sub custom_status_calc {
@ -61,10 +59,10 @@ sub custom_traffic_perfdata {
} }
my ($warning, $critical); my ($warning, $critical);
if ($instance_mode->{option_results}->{units_traffic} eq '%' && defined($self->{result_values}->{speed}) && $self->{result_values}->{speed} > 0) { if ($self->{instance_mode}->{option_results}->{units_traffic} eq '%' && defined($self->{result_values}->{speed}) && $self->{result_values}->{speed} > 0) {
$warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-traffic-' . $self->{result_values}->{label}, total => $self->{result_values}->{speed}, cast_int => 1); $warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-traffic-' . $self->{result_values}->{label}, total => $self->{result_values}->{speed}, cast_int => 1);
$critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-traffic-' . $self->{result_values}->{label}, total => $self->{result_values}->{speed}, cast_int => 1); $critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-traffic-' . $self->{result_values}->{label}, total => $self->{result_values}->{speed}, cast_int => 1);
} elsif ($instance_mode->{option_results}->{units_traffic} eq 'b/s') { } elsif ($self->{instance_mode}->{option_results}->{units_traffic} eq 'b/s') {
$warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-traffic-' . $self->{result_values}->{label}); $warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-traffic-' . $self->{result_values}->{label});
$critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-traffic-' . $self->{result_values}->{label}); $critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-traffic-' . $self->{result_values}->{label});
} }
@ -82,9 +80,9 @@ sub custom_traffic_threshold {
my ($self, %options) = @_; my ($self, %options) = @_;
my $exit = 'ok'; my $exit = 'ok';
if ($instance_mode->{option_results}->{units_traffic} eq '%' && defined($self->{result_values}->{speed}) && $self->{result_values}->{speed} > 0) { if ($self->{instance_mode}->{option_results}->{units_traffic} eq '%' && defined($self->{result_values}->{speed}) && $self->{result_values}->{speed} > 0) {
$exit = $self->{perfdata}->threshold_check(value => $self->{result_values}->{traffic_prct}, threshold => [ { label => 'critical-traffic-' . $self->{result_values}->{label}, exit_litteral => 'critical' }, { label => 'warning-traffic-' . $self->{result_values}->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $self->{result_values}->{traffic_prct}, threshold => [ { label => 'critical-traffic-' . $self->{result_values}->{label}, exit_litteral => 'critical' }, { label => 'warning-traffic-' . $self->{result_values}->{label}, exit_litteral => 'warning' } ]);
} elsif ($instance_mode->{option_results}->{units_traffic} eq 'b/s') { } elsif ($self->{instance_mode}->{option_results}->{units_traffic} eq 'b/s') {
$exit = $self->{perfdata}->threshold_check(value => $self->{result_values}->{traffic_per_seconds}, threshold => [ { label => 'critical-traffic-' . $self->{result_values}->{label}, exit_litteral => 'critical' }, { label => 'warning-traffic-' . $self->{result_values}->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $self->{result_values}->{traffic_per_seconds}, threshold => [ { label => 'critical-traffic-' . $self->{result_values}->{label}, exit_litteral => 'critical' }, { label => 'warning-traffic-' . $self->{result_values}->{label}, exit_litteral => 'warning' } ]);
} }
return $exit; return $exit;
@ -110,7 +108,7 @@ sub custom_traffic_calc {
my $diff_traffic = ($options{new_datas}->{$self->{instance} . '_' . $options{extra_options}->{label_ref}} - $options{old_datas}->{$self->{instance} . '_' . $options{extra_options}->{label_ref}}); my $diff_traffic = ($options{new_datas}->{$self->{instance} . '_' . $options{extra_options}->{label_ref}} - $options{old_datas}->{$self->{instance} . '_' . $options{extra_options}->{label_ref}});
$self->{result_values}->{speed} = defined($instance_mode->{option_results}->{speed}) && $instance_mode->{option_results}->{speed} ne '' ? $instance_mode->{option_results}->{speed} : $options{new_datas}->{$self->{instance} . '_' . $options{extra_options}->{speed}}; $self->{result_values}->{speed} = defined($self->{instance_mode}->{option_results}->{speed}) && $self->{instance_mode}->{option_results}->{speed} ne '' ? $self->{instance_mode}->{option_results}->{speed} : $options{new_datas}->{$self->{instance} . '_' . $options{extra_options}->{speed}};
$self->{result_values}->{speed} = $self->{result_values}->{speed} * 1000 * 1000; # bits $self->{result_values}->{speed} = $self->{result_values}->{speed} * 1000 * 1000; # bits
$self->{result_values}->{traffic_per_seconds} = $diff_traffic * 8 / $options{delta_time}; $self->{result_values}->{traffic_per_seconds} = $diff_traffic * 8 / $options{delta_time};
$self->{result_values}->{traffic_prct} = $self->{result_values}->{traffic_per_seconds} * 100 / $self->{result_values}->{speed} if ($self->{result_values}->{speed} > 0); $self->{result_values}->{traffic_prct} = $self->{result_values}->{traffic_per_seconds} * 100 / $self->{result_values}->{speed} if ($self->{result_values}->{speed} > 0);
@ -309,22 +307,19 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "threshold-overload:s@" => { name => 'threshold_overload' },
"threshold-overload:s@" => { name => 'threshold_overload' }, "units-traffic:s" => { name => 'units_traffic', default => '%' },
"units-traffic:s" => { name => 'units_traffic', default => '%' }, "speed:s" => { name => 'speed' },
"speed:s" => { name => 'speed' }, });
});
return $self; return $self;
} }
sub check_options { sub check_options {
my ($self, %options) = @_; my ($self, %options) = @_;
$self->SUPER::check_options(%options); $self->SUPER::check_options(%options);
$instance_mode = $self;
$self->{overload_th} = {}; $self->{overload_th} = {};
foreach my $val (@{$self->{option_results}->{threshold_overload}}) { foreach my $val (@{$self->{option_results}->{threshold_overload}}) {

View File

@ -35,12 +35,11 @@ my $thresholds = {
['gray', 'UNKNOWN'], ['gray', 'UNKNOWN'],
], ],
}; };
my $instance_mode;
sub custom_threshold_output { sub custom_threshold_output {
my ($self, %options) = @_; my ($self, %options) = @_;
return $instance_mode->get_severity(section => 'vs', value => $self->{result_values}->{AvailState}); return $self->{instance_mode}->get_severity(section => 'vs', value => $self->{result_values}->{AvailState});
} }
sub custom_status_calc { sub custom_status_calc {
@ -81,11 +80,10 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "threshold-overload:s@" => { name => 'threshold_overload' },
"threshold-overload:s@" => { name => 'threshold_overload' }, });
});
return $self; return $self;
} }
@ -93,9 +91,7 @@ sub new {
sub check_options { sub check_options {
my ($self, %options) = @_; my ($self, %options) = @_;
$self->SUPER::check_options(%options); $self->SUPER::check_options(%options);
$instance_mode = $self;
$self->{overload_th} = {}; $self->{overload_th} = {};
foreach my $val (@{$self->{option_results}->{threshold_overload}}) { foreach my $val (@{$self->{option_results}->{threshold_overload}}) {
if ($val !~ /^(.*?),(.*?),(.*)$/) { if ($val !~ /^(.*?),(.*?),(.*)$/) {

View File

@ -25,8 +25,6 @@ use base qw(centreon::plugins::templates::counter);
use strict; use strict;
use warnings; use warnings;
my $instance_mode;
sub set_counters { sub set_counters {
my ($self, %options) = @_; my ($self, %options) = @_;
@ -83,10 +81,10 @@ sub custom_qos_perfdata {
} }
my ($warning, $critical); my ($warning, $critical);
if ($instance_mode->{option_results}->{units_traffic} eq '%' && defined($self->{result_values}->{speed})) { if ($self->{instance_mode}->{option_results}->{units_traffic} eq '%' && defined($self->{result_values}->{speed})) {
$warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}, total => $self->{result_values}->{speed}, cast_int => 1); $warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}, total => $self->{result_values}->{speed}, cast_int => 1);
$critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}, total => $self->{result_values}->{speed}, cast_int => 1); $critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}, total => $self->{result_values}->{speed}, cast_int => 1);
} elsif ($instance_mode->{option_results}->{units_traffic} eq 'b/s') { } elsif ($self->{instance_mode}->{option_results}->{units_traffic} eq 'b/s') {
$warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}); $warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label});
$critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}); $critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label});
} }
@ -102,9 +100,9 @@ sub custom_qos_threshold {
my ($self, %options) = @_; my ($self, %options) = @_;
my $exit = 'ok'; my $exit = 'ok';
if ($instance_mode->{option_results}->{units_traffic} eq '%' && defined($self->{result_values}->{speed})) { if ($self->{instance_mode}->{option_results}->{units_traffic} eq '%' && defined($self->{result_values}->{speed})) {
$exit = $self->{perfdata}->threshold_check(value => $self->{result_values}->{traffic_prct}, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $self->{result_values}->{traffic_prct}, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{label}, exit_litteral => 'warning' } ]);
} elsif ($instance_mode->{option_results}->{units_traffic} eq 'b/s') { } elsif ($self->{instance_mode}->{option_results}->{units_traffic} eq 'b/s') {
$exit = $self->{perfdata}->threshold_check(value => $self->{result_values}->{traffic}, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{label}, exit_litteral => 'warning' } ]); $exit = $self->{perfdata}->threshold_check(value => $self->{result_values}->{traffic}, threshold => [ { label => 'critical-' . $self->{label}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{label}, exit_litteral => 'warning' } ]);
} }
return $exit; return $exit;
@ -135,9 +133,9 @@ sub custom_qos_calc {
if ($options{new_datas}->{$self->{instance} . '_speed_' . $self->{result_values}->{label}} > 0) { if ($options{new_datas}->{$self->{instance} . '_speed_' . $self->{result_values}->{label}} > 0) {
$self->{result_values}->{speed} = $options{new_datas}->{$self->{instance} . '_speed_' . $self->{result_values}->{label}} * 1000 * 1000; $self->{result_values}->{speed} = $options{new_datas}->{$self->{instance} . '_speed_' . $self->{result_values}->{label}} * 1000 * 1000;
$self->{result_values}->{traffic_prct} = $self->{result_values}->{traffic} * 100 / $self->{result_values}->{speed}; $self->{result_values}->{traffic_prct} = $self->{result_values}->{traffic} * 100 / $self->{result_values}->{speed};
} elsif (defined($instance_mode->{option_results}->{'speed_' . $self->{result_values}->{label}}) && $instance_mode->{option_results}->{'speed_' . $self->{result_values}->{label}} =~ /[0-9]/) { } elsif (defined($self->{instance_mode}->{option_results}->{'speed_' . $self->{result_values}->{label}}) && $self->{instance_mode}->{option_results}->{'speed_' . $self->{result_values}->{label}} =~ /[0-9]/) {
$self->{result_values}->{traffic_prct} = $self->{result_values}->{traffic} * 100 / ($instance_mode->{option_results}->{'speed_' . $self->{result_values}->{label}} * 1000 * 1000); $self->{result_values}->{traffic_prct} = $self->{result_values}->{traffic} * 100 / ($self->{instance_mode}->{option_results}->{'speed_' . $self->{result_values}->{label}} * 1000 * 1000);
$self->{result_values}->{speed} = $instance_mode->{option_results}->{'speed_' . $self->{result_values}->{label}} * 1000 * 1000; $self->{result_values}->{speed} = $self->{instance_mode}->{option_results}->{'speed_' . $self->{result_values}->{label}} * 1000 * 1000;
} }
return 0; return 0;
} }
@ -148,25 +146,24 @@ sub new {
bless $self, $class; bless $self, $class;
$self->{version} = '1.0'; $self->{version} = '1.0';
$options{options}->add_options(arguments => $options{options}->add_options(arguments => {
{ "filter-name:s" => { name => 'filter_name' },
"filter-name:s" => { name => 'filter_name' }, "filter-vlan:s" => { name => 'filter_vlan' },
"filter-vlan:s" => { name => 'filter_vlan' }, "speed-in:s" => { name => 'speed_in' },
"speed-in:s" => { name => 'speed_in' }, "speed-out:s" => { name => 'speed_out' },
"speed-out:s" => { name => 'speed_out' }, "units-traffic:s" => { name => 'units_traffic', default => '%' },
"units-traffic:s" => { name => 'units_traffic', default => '%' }, "hostname:s" => { name => 'hostname' },
"hostname:s" => { name => 'hostname' }, "ssh-option:s@" => { name => 'ssh_option' },
"ssh-option:s@" => { name => 'ssh_option' }, "ssh-path:s" => { name => 'ssh_path' },
"ssh-path:s" => { name => 'ssh_path' }, "ssh-command:s" => { name => 'ssh_command', default => 'ssh' },
"ssh-command:s" => { name => 'ssh_command', default => 'ssh' }, "timeout:s" => { name => 'timeout', default => 30 },
"timeout:s" => { name => 'timeout', default => 30 }, "sudo" => { name => 'sudo' },
"sudo" => { name => 'sudo' }, "command:s" => { name => 'command', default => 'tail' },
"command:s" => { name => 'command', default => 'tail' }, "command-path:s" => { name => 'command_path' },
"command-path:s" => { name => 'command_path' }, "command-options:s" => { name => 'command_options', default => '-1 /log/l_monitor' },
"command-options:s" => { name => 'command_options', default => '-1 /log/l_monitor' }, "config-speed-file:s" => { name => 'config_speed_file' },
"config-speed-file:s" => { name => 'config_speed_file' }, });
});
return $self; return $self;
} }
@ -180,9 +177,7 @@ sub check_options {
$self->{hostname} = $self->{option_results}->{hostname}; $self->{hostname} = $self->{option_results}->{hostname};
if (!defined($self->{hostname})) { if (!defined($self->{hostname})) {
$self->{hostname} = 'me'; $self->{hostname} = 'me';
} }
$instance_mode = $self;
} }
sub prefix_qos_output { sub prefix_qos_output {