diff --git a/apps/backup/quadstor/local/mode/vtldiskusage.pm b/apps/backup/quadstor/local/mode/vtldiskusage.pm index 31cc74dc1..930a0a6fa 100644 --- a/apps/backup/quadstor/local/mode/vtldiskusage.pm +++ b/apps/backup/quadstor/local/mode/vtldiskusage.pm @@ -51,19 +51,21 @@ sub custom_usage_perfdata { $label = 'free'; $value_perf = $self->{result_values}->{free}; } - my $extra_label = ''; - $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); + my %total_options = (); if ($self->{instance_mode}->{option_results}->{units} eq '%') { $total_options{total} = $self->{result_values}->{total}; $total_options{cast_int} = 1; } - $self->{output}->perfdata_add(label => $label . $extra_label, unit => 'B', - value => $value_perf, - warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}, %total_options), - critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}, %total_options), - min => 0, max => $self->{result_values}->{total}); + $self->{output}->perfdata_add( + label => $label, unit => 'B', + instances => $self->use_instances(extra_instance => $options{extra_instance}) ? $self->{result_values}->{display} : undef, + value => $value_perf, + warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{thlabel}, %total_options), + critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{thlabel}, %total_options), + min => 0, max => $self->{result_values}->{total} + ); } sub custom_usage_threshold { @@ -76,7 +78,7 @@ sub custom_usage_threshold { $threshold_value = $self->{result_values}->{prct_used}; $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->{thlabel}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{thlabel}, exit_litteral => 'warning' } ]); return $exit; } diff --git a/apps/backup/quadstor/local/mode/vtltapeusage.pm b/apps/backup/quadstor/local/mode/vtltapeusage.pm index 370d845c5..7a3f5d755 100644 --- a/apps/backup/quadstor/local/mode/vtltapeusage.pm +++ b/apps/backup/quadstor/local/mode/vtltapeusage.pm @@ -51,19 +51,21 @@ sub custom_usage_perfdata { $label = 'free'; $value_perf = $self->{result_values}->{free}; } - my $extra_label = ''; - $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); + my %total_options = (); if ($self->{instance_mode}->{option_results}->{units} eq '%') { $total_options{total} = $self->{result_values}->{total}; $total_options{cast_int} = 1; } - $self->{output}->perfdata_add(label => $label . $extra_label, unit => 'B', - value => $value_perf, - warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}, %total_options), - critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}, %total_options), - min => 0, max => $self->{result_values}->{total}); + $self->{output}->perfdata_add( + label => $label, unit => 'B', + instances => $self->use_instances(extra_instance => $options{extra_instance}) ? $self->{result_values}->{display} : undef, + value => $value_perf, + warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{thlabel}, %total_options), + critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{thlabel}, %total_options), + min => 0, max => $self->{result_values}->{total} + ); } sub custom_usage_threshold { @@ -76,7 +78,7 @@ sub custom_usage_threshold { $threshold_value = $self->{result_values}->{prct_used}; $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->{thlabel}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{thlabel}, exit_litteral => 'warning' } ]); return $exit; } diff --git a/apps/hddtemp/remote/mode/temperature.pm b/apps/hddtemp/remote/mode/temperature.pm index 7ea273b0f..e55df715a 100644 --- a/apps/hddtemp/remote/mode/temperature.pm +++ b/apps/hddtemp/remote/mode/temperature.pm @@ -32,17 +32,16 @@ sub new { bless $self, $class; $self->{version} = '1.0'; - $options{options}->add_options(arguments => - { - "hostname:s" => { name => 'hostname' }, - "port:s" => { name => 'port', default => '7634' }, - "timeout:s" => { name => 'timeout', default => '10' }, - "name:s" => { name => 'name' }, - "warning:s" => { name => 'warning' }, - "critical:s" => { name => 'critical' }, - "regexp" => { name => 'use_regexp' }, - "regexp-isensitive" => { name => 'use_regexpi' }, - }); + $options{options}->add_options(arguments => { + "hostname:s" => { name => 'hostname' }, + "port:s" => { name => 'port', default => '7634' }, + "timeout:s" => { name => 'timeout', default => '10' }, + "name:s" => { name => 'name' }, + "warning:s" => { name => 'warning' }, + "critical:s" => { name => 'critical' }, + "regexp" => { name => 'use_regexp' }, + "regexp-isensitive" => { name => 'use_regexpi' }, + }); $self->{result} = {}; $self->{hostname} = undef; @@ -71,11 +70,12 @@ sub check_options { sub manage_selection { my ($self, %options) = @_; - my $oSocketConn = new IO::Socket::INET ( Proto => 'tcp', - PeerAddr => $self->{option_results}->{hostname}, - PeerPort => $self->{option_results}->{port}, - Timeout => $self->{option_results}->{timeout}, - ); + my $oSocketConn = new IO::Socket::INET ( + Proto => 'tcp', + PeerAddr => $self->{option_results}->{hostname}, + PeerPort => $self->{option_results}->{port}, + Timeout => $self->{option_results}->{timeout}, + ); if (!defined($oSocketConn)) { $self->{output}->add_option_msg(short_msg => "Could not connect."); @@ -147,14 +147,17 @@ sub run { $self->{result}->{$name}->{unit})); } - my $extra_label = ''; + my $extra_label; $extra_label = '_' . $name if (!defined($self->{option_results}->{name}) || defined($self->{option_results}->{use_regexp})); - $self->{output}->perfdata_add(label => 'temp' . $extra_label, - unit => $self->{result}->{$name}->{unit}, - value => sprintf("%.2f", $self->{result}->{$name}->{temperature}), - warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), - critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), - min => 0); + $self->{output}->perfdata_add( + label => 'temp', + intances => $extra_label, + unit => $self->{result}->{$name}->{unit}, + value => sprintf("%.2f", $self->{result}->{$name}->{temperature}), + warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), + critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), + min => 0 + ); }; $self->{output}->display(); diff --git a/apps/iis/local/mode/webservicestatistics.pm b/apps/iis/local/mode/webservicestatistics.pm index c00a5b04a..fde285b10 100644 --- a/apps/iis/local/mode/webservicestatistics.pm +++ b/apps/iis/local/mode/webservicestatistics.pm @@ -185,13 +185,16 @@ sub check { $str_display .= $str_display_append . sprintf("%s %s /sec", $name, $value_display); $str_display_append = ', '; - my $extra_label = ''; + my $extra_label; $extra_label = '_' . $site_name if (!defined($self->{option_results}->{name}) || defined($self->{option_results}->{use_regexp})); - $self->{output}->perfdata_add(label => $name . $extra_label, unit => $counters->{$name}->{unit}, - value => sprintf("%.2f", $value_per_seconds), - warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning_' . $name), - critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical_' . $name), - min => 0); + $self->{output}->perfdata_add( + label => $name, unit => $counters->{$name}->{unit}, + instances => $extra_label, + value => sprintf("%.2f", $value_per_seconds), + warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning_' . $name), + critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical_' . $name), + min => 0 + ); } # No values computing. @@ -259,4 +262,4 @@ Counters are separated by comas. =back -=cut \ No newline at end of file +=cut diff --git a/apps/inin/mediaserver/snmp/mode/cmdsrvusage.pm b/apps/inin/mediaserver/snmp/mode/cmdsrvusage.pm index 8aab6cea7..c5ccb271b 100644 --- a/apps/inin/mediaserver/snmp/mode/cmdsrvusage.pm +++ b/apps/inin/mediaserver/snmp/mode/cmdsrvusage.pm @@ -51,19 +51,21 @@ sub custom_usage_perfdata { $label = 'free'; $value_perf = $self->{result_values}->{free}; } - my $extra_label = ''; - $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); + my %total_options = (); if ($self->{instance_mode}->{option_results}->{units} eq '%') { $total_options{total} = $self->{result_values}->{total}; $total_options{cast_int} = 1; } - $self->{output}->perfdata_add(label => $label . $extra_label, unit => 'B', - value => $value_perf, - warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}, %total_options), - critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}, %total_options), - min => 0, max => $self->{result_values}->{total}); + $self->{output}->perfdata_add( + label => $label, unit => 'B', + instances => $self->use_instances(extra_instance => $options{extra_instance}) ? $self->{result_values}->{display} : undef, + value => $value_perf, + warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{thlabel}, %total_options), + critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{thlabel}, %total_options), + min => 0, max => $self->{result_values}->{total} + ); } sub custom_usage_threshold { @@ -76,7 +78,7 @@ sub custom_usage_threshold { $threshold_value = $self->{result_values}->{prct_used}; $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->{thlabel}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{thlabel}, exit_litteral => 'warning' } ]); return $exit; } diff --git a/apps/tomcat/jmx/mode/connectorusage.pm b/apps/tomcat/jmx/mode/connectorusage.pm index 2068994af..0d458f56f 100644 --- a/apps/tomcat/jmx/mode/connectorusage.pm +++ b/apps/tomcat/jmx/mode/connectorusage.pm @@ -91,9 +91,6 @@ sub custom_usage_perfdata { my $use_th = 1; $use_th = 0 if ($self->{instance_mode}->{option_results}->{units} eq '%' && $self->{result_values}->{max} <= 0); - my $extra_label = ''; - $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); - my $value_perf = $self->{result_values}->{used}; my %total_options = (); if ($self->{instance_mode}->{option_results}->{units} eq '%' && $self->{result_values}->{max} > 0) { @@ -103,11 +100,14 @@ sub custom_usage_perfdata { my $label = $self->{label}; $label =~ s/-/_/g; - $self->{output}->perfdata_add(label => $label . $extra_label, - value => $value_perf, - warning => $use_th == 1 ? $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}, %total_options) : undef, - critical => $use_th == 1 ? $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}, %total_options) : undef, - min => 0, max => $self->{result_values}->{max} > 0 ? $self->{result_values}->{max} : undef); + $self->{output}->perfdata_add( + label => $label, + instances => $self->use_instances(extra_instance => $options{extra_instance}) ? $self->{result_values}->{display} : undef, + value => $value_perf, + warning => $use_th == 1 ? $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{thlabel}, %total_options) : undef, + critical => $use_th == 1 ? $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{thlabel}, %total_options) : undef, + min => 0, max => $self->{result_values}->{max} > 0 ? $self->{result_values}->{max} : undef + ); } sub custom_usage_threshold { @@ -120,7 +120,7 @@ sub custom_usage_threshold { if ($self->{instance_mode}->{option_results}->{units} eq '%') { $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->{thlabel}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{thlabel}, exit_litteral => 'warning' } ]); return $exit; } diff --git a/apps/tomcat/jmx/mode/datasourceusage.pm b/apps/tomcat/jmx/mode/datasourceusage.pm index 515c0b845..46b355ac4 100644 --- a/apps/tomcat/jmx/mode/datasourceusage.pm +++ b/apps/tomcat/jmx/mode/datasourceusage.pm @@ -61,9 +61,6 @@ sub custom_usage_perfdata { my $use_th = 1; $use_th = 0 if ($self->{instance_mode}->{option_results}->{units} eq '%' && $self->{result_values}->{max} <= 0); - my $extra_label = ''; - $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); - my $value_perf = $self->{result_values}->{used}; my %total_options = (); if ($self->{instance_mode}->{option_results}->{units} eq '%' && $self->{result_values}->{max} > 0) { @@ -73,11 +70,14 @@ sub custom_usage_perfdata { my $label = $self->{label}; $label =~ s/-/_/g; - $self->{output}->perfdata_add(label => $label . $extra_label, - value => $value_perf, - warning => $use_th == 1 ? $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}, %total_options) : undef, - critical => $use_th == 1 ? $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}, %total_options) : undef, - min => 0, max => $self->{result_values}->{max} > 0 ? $self->{result_values}->{max} : undef); + $self->{output}->perfdata_add( + label => $label, + instances => $self->use_instances(extra_instance => $options{extra_instance}) ? $self->{result_values}->{display} : undef, + value => $value_perf, + warning => $use_th == 1 ? $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{thlabel}, %total_options) : undef, + critical => $use_th == 1 ? $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{thlabel}, %total_options) : undef, + min => 0, max => $self->{result_values}->{max} > 0 ? $self->{result_values}->{max} : undef + ); } sub custom_usage_threshold { @@ -90,7 +90,7 @@ sub custom_usage_threshold { if ($self->{instance_mode}->{option_results}->{units} eq '%') { $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->{thlabel}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{thlabel}, exit_litteral => 'warning' } ]); return $exit; } diff --git a/apps/tomcat/jmx/mode/webappssessions.pm b/apps/tomcat/jmx/mode/webappssessions.pm index ee540650f..790180e6a 100644 --- a/apps/tomcat/jmx/mode/webappssessions.pm +++ b/apps/tomcat/jmx/mode/webappssessions.pm @@ -61,9 +61,6 @@ sub custom_usage_perfdata { my $use_th = 1; $use_th = 0 if ($self->{instance_mode}->{option_results}->{units} eq '%' && $self->{result_values}->{max} <= 0); - my $extra_label = ''; - $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); - my $value_perf = $self->{result_values}->{used}; my %total_options = (); if ($self->{instance_mode}->{option_results}->{units} eq '%' && $self->{result_values}->{max} > 0) { @@ -73,11 +70,14 @@ sub custom_usage_perfdata { my $label = $self->{label}; $label =~ s/-/_/g; - $self->{output}->perfdata_add(label => $label . $extra_label, - value => $value_perf, - warning => $use_th == 1 ? $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}, %total_options) : undef, - critical => $use_th == 1 ? $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}, %total_options) : undef, - min => 0, max => $self->{result_values}->{max} > 0 ? $self->{result_values}->{max} : undef); + $self->{output}->perfdata_add( + label => $label, + instances => $self->use_instances(extra_instance => $options{extra_instance}) ? $self->{result_values}->{display} : undef, + value => $value_perf, + warning => $use_th == 1 ? $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{thlabel}, %total_options) : undef, + critical => $use_th == 1 ? $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{thlabel}, %total_options) : undef, + min => 0, max => $self->{result_values}->{max} > 0 ? $self->{result_values}->{max} : undef + ); } sub custom_usage_threshold { @@ -90,7 +90,7 @@ sub custom_usage_threshold { if ($self->{instance_mode}->{option_results}->{units} eq '%') { $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->{thlabel}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{thlabel}, exit_litteral => 'warning' } ]); return $exit; } diff --git a/apps/tomcat/web/mode/applications.pm b/apps/tomcat/web/mode/applications.pm index 348d03dd9..8ede76459 100644 --- a/apps/tomcat/web/mode/applications.pm +++ b/apps/tomcat/web/mode/applications.pm @@ -123,11 +123,14 @@ sub run { $self->{result}->{$name}->{state})); } - my $extra_label = ''; + my $extra_label; $extra_label = '_' . $name if (!defined($self->{option_results}->{name}) || defined($self->{option_results}->{use_regexp})); - $self->{output}->perfdata_add(label => 'status' . $extra_label, - value => sprintf("%.1f", $staterc), - min => 0); + $self->{output}->perfdata_add( + label => 'status', + instances => $extra_label, + value => sprintf("%.1f", $staterc), + min => 0 + ); }; $self->{output}->display(); diff --git a/apps/tomcat/web/mode/requestinfo.pm b/apps/tomcat/web/mode/requestinfo.pm index 25e33ed20..01e66073d 100644 --- a/apps/tomcat/web/mode/requestinfo.pm +++ b/apps/tomcat/web/mode/requestinfo.pm @@ -275,30 +275,41 @@ sub run { $requestInfo_errorCount_absolute_per_sec)); } - my $extra_label = ''; + my $extra_label; $extra_label = '_' . $name if (!defined($self->{option_results}->{name}) || defined($self->{option_results}->{use_regexp})); - $self->{output}->perfdata_add(label => 'maxTime' . $extra_label, - value => sprintf("%.2f", $self->{result}->{$name}->{requestInfo_maxTime}), - warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), - critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), - min => 0); + $self->{output}->perfdata_add( + label => 'maxTime', + instances => $extra_label, + value => sprintf("%.2f", $self->{result}->{$name}->{requestInfo_maxTime}), + warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), + critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), + min => 0 + ); - $self->{output}->perfdata_add(label => 'processingTime' . $extra_label, - value => sprintf("%.3f", $requestInfo_processingTime_absolute_per_sec), - warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), - critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), - min => 0); - - $self->{output}->perfdata_add(label => 'requestCount' . $extra_label, - value => sprintf("%.2f", $requestInfo_requestCount_absolute_per_sec), - warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), - critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), - min => 0); - $self->{output}->perfdata_add(label => 'errorCount' . $extra_label, - value => sprintf("%.2f", $requestInfo_errorCount_absolute_per_sec), - warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), - critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), - min => 0); + $self->{output}->perfdata_add( + label => 'processingTime', + instances => $extra_label, + value => sprintf("%.3f", $requestInfo_processingTime_absolute_per_sec), + warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), + critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), + min => 0 + ); + $self->{output}->perfdata_add( + label => 'requestCount', + instances => $extra_label, + value => sprintf("%.2f", $requestInfo_requestCount_absolute_per_sec), + warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), + critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), + min => 0 + ); + $self->{output}->perfdata_add( + label => 'errorCount', + instances => $extra_label, + value => sprintf("%.2f", $requestInfo_errorCount_absolute_per_sec), + warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), + critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), + min => 0 + ); }; $self->{statefile_value}->write(data => $new_datas); diff --git a/apps/tomcat/web/mode/sessions.pm b/apps/tomcat/web/mode/sessions.pm index 9cbaea6ef..61bc891a2 100644 --- a/apps/tomcat/web/mode/sessions.pm +++ b/apps/tomcat/web/mode/sessions.pm @@ -124,13 +124,16 @@ sub run { $self->{result}->{$name}->{sessions})); } - my $extra_label = ''; + my $extra_label; $extra_label = '_' . $name if (!defined($self->{option_results}->{name}) || defined($self->{option_results}->{use_regexp})); - $self->{output}->perfdata_add(label => 'sessions' . $extra_label, - value => sprintf("%.2f", $self->{result}->{$name}->{sessions}), - warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), - critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), - min => 0); + $self->{output}->perfdata_add( + label => 'sessions', + instances => $extra_label, + value => sprintf("%.2f", $self->{result}->{$name}->{sessions}), + warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), + critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), + min => 0 + ); }; $self->{output}->display(); diff --git a/apps/tomcat/web/mode/threads.pm b/apps/tomcat/web/mode/threads.pm index f048b6899..9385d23a4 100644 --- a/apps/tomcat/web/mode/threads.pm +++ b/apps/tomcat/web/mode/threads.pm @@ -184,21 +184,27 @@ sub run { $self->{result}->{$name}->{currentThreadsBusy})); } - my $extra_label = ''; + my $extra_label; $extra_label = '_' . $name if (!defined($self->{option_results}->{name}) || defined($self->{option_results}->{use_regexp})); - $self->{output}->perfdata_add(label => 'currentThreadsBusy' . $extra_label, - value => $self->{result}->{$name}->{currentThreadsBusy}, - warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), - critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), - min => 0, - max => $self->{result}->{$name}->{maxThreads}); + $self->{output}->perfdata_add( + label => 'currentThreadsBusy', + instances => $extra_label, + value => $self->{result}->{$name}->{currentThreadsBusy}, + warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), + critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), + min => 0, + max => $self->{result}->{$name}->{maxThreads} + ); - $self->{output}->perfdata_add(label => 'currentThreadCount' . $extra_label, - value => $self->{result}->{$name}->{currentThreadCount}, - warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), - critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), - min => 0, - max => $self->{result}->{$name}->{maxThreads}); + $self->{output}->perfdata_add( + label => 'currentThreadCount', + instances => $extra_label, + value => $self->{result}->{$name}->{currentThreadCount}, + warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning'), + critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical'), + min => 0, + max => $self->{result}->{$name}->{maxThreads} + ); }; $self->{output}->display(); diff --git a/apps/tomcat/web/mode/traffic.pm b/apps/tomcat/web/mode/traffic.pm index b64b78e95..edeadefc8 100644 --- a/apps/tomcat/web/mode/traffic.pm +++ b/apps/tomcat/web/mode/traffic.pm @@ -61,25 +61,23 @@ sub set_counters { sub custom_traffic_perfdata { my ($self, %options) = @_; - my $extra_label = ''; - if (!defined($options{extra_instance}) || $options{extra_instance} != 0) { - $extra_label .= '_' . $self->{result_values}->{display}; - } - my ($warning, $critical); 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); - $critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}, total => $self->{result_values}->{speed}, cast_int => 1); + $warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{thlabel}, total => $self->{result_values}->{speed}, cast_int => 1); + $critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{thlabel}, total => $self->{result_values}->{speed}, cast_int => 1); } elsif ($self->{instance_mode}->{option_results}->{units_traffic} eq 'b/s') { - $warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}); - $critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}); + $warning = $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{thlabel}); + $critical = $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{thlabel}); } - $self->{output}->perfdata_add(label => 'traffic_' . $self->{result_values}->{label} . $extra_label, unit => 'b/s', - value => sprintf("%.2f", $self->{result_values}->{traffic}), - warning => $warning, - critical => $critical, - min => 0, max => $self->{result_values}->{speed}); + $self->{output}->perfdata_add( + label => 'traffic_' . $self->{result_values}->{label}, unit => 'b/s', + instances => $self->use_instances(extra_instance => $options{extra_instance}) ? $self->{result_values}->{display} : undef, + value => sprintf("%.2f", $self->{result_values}->{traffic}), + warning => $warning, + critical => $critical, + min => 0, max => $self->{result_values}->{speed} + ); } sub custom_traffic_threshold { @@ -87,9 +85,9 @@ sub custom_traffic_threshold { my $exit = 'ok'; 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->{thlabel}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{thlabel}, exit_litteral => 'warning' } ]); } 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->{thlabel}, exit_litteral => 'critical' }, { label => 'warning-' . $self->{thlabel}, exit_litteral => 'warning' } ]); } return $exit; } diff --git a/apps/video/zixi/restapi/mode/broadcasterlicenseusage.pm b/apps/video/zixi/restapi/mode/broadcasterlicenseusage.pm index c1d4eb6d4..90e712a01 100644 --- a/apps/video/zixi/restapi/mode/broadcasterlicenseusage.pm +++ b/apps/video/zixi/restapi/mode/broadcasterlicenseusage.pm @@ -54,19 +54,21 @@ sub custom_usage_perfdata { $label = 'free'; $value_perf = $self->{result_values}->{free}; } - my $extra_label = ''; - $extra_label = '_' . $self->{result_values}->{display} if (!defined($options{extra_instance}) || $options{extra_instance} != 0); + my %total_options = (); if ($self->{result_values}->{total} =~ /[0-9]/ && $self->{instance_mode}->{option_results}->{units} eq '%') { $total_options{total} = $self->{result_values}->{total}; $total_options{cast_int} = 1; } - $self->{output}->perfdata_add(label => $label . $extra_label, - value => $value_perf, - warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{label}, %total_options), - critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{label}, %total_options), - min => 0, max => $self->{result_values}->{total} =~ /[0-9]/ ? $self->{result_values}->{total} : undef); + $self->{output}->perfdata_add( + label => $label, + instances => $self->use_instances(extra_instance => $options{extra_instance}) ? $self->{result_values}->{display} : undef, + value => $value_perf, + warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{thlabel}, %total_options), + critical => $self->{perfdata}->get_perfdata_for_output(label => 'critical-' . $self->{thlabel}, %total_options), + min => 0, max => $self->{result_values}->{total} =~ /[0-9]/ ? $self->{result_values}->{total} : undef + ); } sub custom_usage_threshold { @@ -79,7 +81,7 @@ sub custom_usage_threshold { $threshold_value = $self->{result_values}->{prct_used}; $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->{thlabel}, exit_litteral => 'critical' }, { label => 'warning-'. $self->{thlabel}, exit_litteral => 'warning' } ]); return $exit; } diff --git a/apps/vmware/connector/mode/datastoreusage.pm b/apps/vmware/connector/mode/datastoreusage.pm index 9eb3961ee..b4ce80393 100644 --- a/apps/vmware/connector/mode/datastoreusage.pm +++ b/apps/vmware/connector/mode/datastoreusage.pm @@ -49,9 +49,7 @@ sub custom_usage_perfdata { ($label, $nlabel) = ('free', 'datastore.space.free.bytes'); $value_perf = $self->{result_values}->{free}; } - my $extra_label = ''; - $extra_label = $self->{result_values}->{display} - if (!defined($options{extra_instance}) || $options{extra_instance} != 0 || $self->{output}->use_new_perfdata()); + my %total_options = (); if ($self->{instance_mode}->{option_results}->{units} eq '%') { $total_options{total} = $self->{result_values}->{total}; @@ -60,7 +58,7 @@ sub custom_usage_perfdata { $self->{output}->perfdata_add( label => $label, unit => 'B', - instances => $extra_label, + instances => $self->use_instances(extra_instance => $options{extra_instance}) ? $self->{result_values}->{display} : undef, nlabel => $nlabel, value => $value_perf, warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{thlabel}, %total_options), diff --git a/apps/vmware/connector/mode/memoryhost.pm b/apps/vmware/connector/mode/memoryhost.pm index ef3858c41..ec37c1c4d 100644 --- a/apps/vmware/connector/mode/memoryhost.pm +++ b/apps/vmware/connector/mode/memoryhost.pm @@ -49,9 +49,7 @@ sub custom_usage_perfdata { ($label, $nlabel) = ('free', 'host.memory.free.bytes'); $value_perf = $self->{result_values}->{free}; } - my $extra_label = ''; - $extra_label = $self->{result_values}->{display} - if (!defined($options{extra_instance}) || $options{extra_instance} != 0 || $self->{output}->use_new_perfdata()); + my %total_options = (); if ($self->{instance_mode}->{option_results}->{units} eq '%') { $total_options{total} = $self->{result_values}->{total}; @@ -60,7 +58,7 @@ sub custom_usage_perfdata { $self->{output}->perfdata_add( label => $label, unit => 'B', - instances => $extra_label, + instances => $self->use_instances(extra_instance => $options{extra_instance}) ? $self->{result_values}->{display} : undef, nlabel => $nlabel, value => $value_perf, warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{thlabel}, %total_options), diff --git a/apps/vmware/connector/mode/memoryvm.pm b/apps/vmware/connector/mode/memoryvm.pm index e5b6d8d53..354beb0b9 100644 --- a/apps/vmware/connector/mode/memoryvm.pm +++ b/apps/vmware/connector/mode/memoryvm.pm @@ -50,9 +50,7 @@ sub custom_usage_perfdata { ($label, $nlabel) = ('free', 'vm.memory.free.bytes'); $value_perf = $self->{result_values}->{free}; } - my $extra_label = ''; - $extra_label = $self->{result_values}->{display} - if (!defined($options{extra_instance}) || $options{extra_instance} != 0 || $self->{output}->use_new_perfdata()); + my %total_options = (); if ($self->{instance_mode}->{option_results}->{units} eq '%') { $total_options{total} = $self->{result_values}->{total}; @@ -61,7 +59,7 @@ sub custom_usage_perfdata { $self->{output}->perfdata_add( label => $label, unit => 'B', - instances => $extra_label, + instances => $self->use_instances(extra_instance => $options{extra_instance}) ? $self->{result_values}->{display} : undef, nlabel => $nlabel, value => $value_perf, warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{thlabel}, %total_options), diff --git a/centreon/common/cisco/standard/snmp/mode/memory.pm b/centreon/common/cisco/standard/snmp/mode/memory.pm index fd4ef9c5a..9311fc202 100644 --- a/centreon/common/cisco/standard/snmp/mode/memory.pm +++ b/centreon/common/cisco/standard/snmp/mode/memory.pm @@ -39,14 +39,10 @@ sub custom_usage_perfdata { $total_options{cast_int} = 1; $value_perf = $self->{result_values}->{used}; } - - my $extra_label; - $extra_label = $self->{result_values}->{display} - if (!defined($options{extra_instance}) || $options{extra_instance} != 0 || $self->{output}->use_new_perfdata()); $self->{output}->perfdata_add( label => $label, unit => $unit, - instances => $extra_label, + instances => $self->use_instances(extra_instance => $options{extra_instance}) ? $self->{result_values}->{display} : undef, nlabel => $nlabel, value => $value_perf, warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{thlabel}, %total_options), diff --git a/centreon/plugins/values.pm b/centreon/plugins/values.pm index 5d438d138..432602865 100644 --- a/centreon/plugins/values.pm +++ b/centreon/plugins/values.pm @@ -161,6 +161,16 @@ sub output { return sprintf($self->{output_template}, $value, $unit); } +sub use_instances { + my ($self, %options) = @_; + + if (!defined($options{extra_instance}) || $options{extra_instance} != 0 || $self->{output}->use_new_perfdata()) { + return 1; + } + + return 0; +} + sub perfdata { my ($self, %options) = @_; diff --git a/snmp_standard/mode/interfaces.pm b/snmp_standard/mode/interfaces.pm index 0d071a3e4..4b825d0c6 100644 --- a/snmp_standard/mode/interfaces.pm +++ b/snmp_standard/mode/interfaces.pm @@ -742,20 +742,16 @@ sub new { $options{options}->add_options(arguments => { "add-volume" => { name => 'add_volume' }, }); } if ($self->{no_oid_options} == 0) { - $options{options}->add_options(arguments => - { - "oid-filter:s" => { name => 'oid_filter', default => $self->default_oid_filter_name() }, - "oid-display:s" => { name => 'oid_display', default => $self->default_oid_display_name() }, - "oid-extra-display:s" => { name => 'oid_extra_display' }, - } - ); + $options{options}->add_options(arguments => { + "oid-filter:s" => { name => 'oid_filter', default => $self->default_oid_filter_name() }, + "oid-display:s" => { name => 'oid_display', default => $self->default_oid_display_name() }, + "oid-extra-display:s" => { name => 'oid_extra_display' }, + }); } if ($self->{no_interfaceid_options} == 0) { - $options{options}->add_options(arguments => - { - "name" => { name => 'use_name' }, - } - ); + $options{options}->add_options(arguments => { + "name" => { name => 'use_name' }, + }); } $self->{statefile_value} = centreon::plugins::statefile->new(%options); @@ -767,9 +763,9 @@ sub new { my ($id, $name) = split /_/; if (!defined($self->{maps_counters}->{$key}->{$_}->{threshold}) || $self->{maps_counters}->{$key}->{$_}->{threshold} != 0) { $options{options}->add_options(arguments => { - 'warning-' . $name . ':s' => { name => 'warning-' . $name }, - 'critical-' . $name . ':s' => { name => 'critical-' . $name }, - }); + 'warning-' . $name . ':s' => { name => 'warning-' . $name }, + 'critical-' . $name . ':s' => { name => 'critical-' . $name }, + }); } $self->{maps_counters}->{$key}->{$_}->{obj} = centreon::plugins::values->new(statefile => $self->{statefile_value}, output => $self->{output}, perfdata => $self->{perfdata}, diff --git a/storage/qnap/snmp/mode/volumeusage.pm b/storage/qnap/snmp/mode/volumeusage.pm index e0203864a..d075a24d6 100644 --- a/storage/qnap/snmp/mode/volumeusage.pm +++ b/storage/qnap/snmp/mode/volumeusage.pm @@ -34,9 +34,7 @@ sub custom_usage_perfdata { ($label, $nlabel) = ('free', 'memory.free.bytes'); $value_perf = $self->{result_values}->{free}; } - my $extra_label; - $extra_label = $self->{result_values}->{display} - if (!defined($options{extra_instance}) || $options{extra_instance} != 0 || $self->{output}->use_new_perfdata()); + my %total_options = (); if ($self->{instance_mode}->{option_results}->{units} eq '%') { $total_options{total} = $self->{result_values}->{total}; @@ -45,7 +43,7 @@ sub custom_usage_perfdata { $self->{output}->perfdata_add( label => $label, unit => 'B', - instances => $extra_label, + instances => $self->use_instances(extra_instance => $options{extra_instance}) ? $self->{result_values}->{display} : undef, nlabel => $nlabel, value => $value_perf, warning => $self->{perfdata}->get_perfdata_for_output(label => 'warning-' . $self->{thlabel}, %total_options),