mirror of
https://github.com/centreon/centreon-plugins.git
synced 2025-07-24 06:05:17 +02:00
WIP: new perfdata system
This commit is contained in:
parent
1f153d5ff1
commit
aa4608e30d
@ -43,7 +43,7 @@ sub custom_status_calc {
|
|||||||
sub custom_usage_perfdata {
|
sub custom_usage_perfdata {
|
||||||
my ($self, %options) = @_;
|
my ($self, %options) = @_;
|
||||||
|
|
||||||
my ($label, $nlabel) = ('used', $self->{label});
|
my ($label, $nlabel) = ('used', $self->{nlabel});
|
||||||
my $value_perf = $self->{result_values}->{used};
|
my $value_perf = $self->{result_values}->{used};
|
||||||
if (defined($self->{instance_mode}->{option_results}->{free})) {
|
if (defined($self->{instance_mode}->{option_results}->{free})) {
|
||||||
($label, $nlabel) = ('free', 'datastore.space.free.bytes');
|
($label, $nlabel) = ('free', 'datastore.space.free.bytes');
|
||||||
|
@ -43,7 +43,7 @@ sub custom_status_calc {
|
|||||||
sub custom_usage_perfdata {
|
sub custom_usage_perfdata {
|
||||||
my ($self, %options) = @_;
|
my ($self, %options) = @_;
|
||||||
|
|
||||||
my ($label, $nlabel) = ('used', $self->{label});
|
my ($label, $nlabel) = ('used', $self->{nlabel});
|
||||||
my $value_perf = $self->{result_values}->{used};
|
my $value_perf = $self->{result_values}->{used};
|
||||||
if (defined($self->{instance_mode}->{option_results}->{free})) {
|
if (defined($self->{instance_mode}->{option_results}->{free})) {
|
||||||
($label, $nlabel) = ('free', 'host.memory.free.bytes');
|
($label, $nlabel) = ('free', 'host.memory.free.bytes');
|
||||||
|
@ -44,7 +44,7 @@ sub custom_status_calc {
|
|||||||
sub custom_usage_perfdata {
|
sub custom_usage_perfdata {
|
||||||
my ($self, %options) = @_;
|
my ($self, %options) = @_;
|
||||||
|
|
||||||
my ($label, $nlabel) = ('used', $self->{label});
|
my ($label, $nlabel) = ('used', $self->{nlabel});
|
||||||
my $value_perf = $self->{result_values}->{used};
|
my $value_perf = $self->{result_values}->{used};
|
||||||
if (defined($self->{instance_mode}->{option_results}->{free})) {
|
if (defined($self->{instance_mode}->{option_results}->{free})) {
|
||||||
($label, $nlabel) = ('free', 'vm.memory.free.bytes');
|
($label, $nlabel) = ('free', 'vm.memory.free.bytes');
|
||||||
|
@ -28,7 +28,7 @@ use warnings;
|
|||||||
sub custom_usage_perfdata {
|
sub custom_usage_perfdata {
|
||||||
my ($self, %options) = @_;
|
my ($self, %options) = @_;
|
||||||
|
|
||||||
my ($label, $nlabel, $unit, $total) = ('used', $self->{label}, '%', 100);
|
my ($label, $nlabel, $unit, $total) = ('used', $self->{nlabel}, '%', 100);
|
||||||
my $value_perf = $self->{result_values}->{prct_used};
|
my $value_perf = $self->{result_values}->{prct_used};
|
||||||
my %total_options = ();
|
my %total_options = ();
|
||||||
if ($self->{result_values}->{total} != -1) {
|
if ($self->{result_values}->{total} != -1) {
|
||||||
|
@ -146,9 +146,11 @@ sub new {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$_->{obj} = centreon::plugins::values->new(statefile => $self->{statefile_value},
|
$_->{obj} = centreon::plugins::values->new(
|
||||||
output => $self->{output}, perfdata => $self->{perfdata},
|
statefile => $self->{statefile_value},
|
||||||
label => $label, thlabel => $thlabel);
|
output => $self->{output}, perfdata => $self->{perfdata},
|
||||||
|
label => $_->{label}, nlabel => $_->{nlabel}, thlabel => $thlabel,
|
||||||
|
);
|
||||||
$_->{obj}->set(%{$_->{set}});
|
$_->{obj}->set(%{$_->{set}});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -35,6 +35,7 @@ sub new {
|
|||||||
$self->{output} = $options{output};
|
$self->{output} = $options{output};
|
||||||
$self->{perfdata} = $options{perfdata};
|
$self->{perfdata} = $options{perfdata};
|
||||||
$self->{label} = $options{label};
|
$self->{label} = $options{label};
|
||||||
|
$self->{nlabel} = $options{nlabel};
|
||||||
$self->{thlabel} = defined($options{thlabel}) ? $options{thlabel} : $self->{label};
|
$self->{thlabel} = defined($options{thlabel}) ? $options{thlabel} : $self->{label};
|
||||||
|
|
||||||
$self->{perfdatas} = [];
|
$self->{perfdatas} = [];
|
||||||
@ -211,16 +212,11 @@ sub perfdata {
|
|||||||
$instances = $instance;
|
$instances = $instance;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
my %nlabel_option = ();
|
|
||||||
if ($self->{output}->use_new_perfdata()) {
|
|
||||||
$nlabel_option{nlabel} = $self->{label};
|
|
||||||
}
|
|
||||||
|
|
||||||
$self->{output}->perfdata_add(
|
$self->{output}->perfdata_add(
|
||||||
label => $label,
|
label => $label,
|
||||||
instances => $instances,
|
instances => $instances,
|
||||||
%nlabel_option,
|
nlabel => $self->{nlabel},
|
||||||
unit => $perf->{unit},
|
unit => $perf->{unit},
|
||||||
value => $cast_int == 1 ? int($self->{result_values}->{$perf->{value}}) : sprintf($template, $self->{result_values}->{$perf->{value}}),
|
value => $cast_int == 1 ? int($self->{result_values}->{$perf->{value}}) : sprintf($template, $self->{result_values}->{$perf->{value}}),
|
||||||
warning => $self->{perfdata}->get_perfdata_for_output(label => $warn, total => $th_total, cast_int => $cast_int),
|
warning => $self->{perfdata}->get_perfdata_for_output(label => $warn, total => $th_total, cast_int => $cast_int),
|
||||||
|
@ -78,12 +78,14 @@ sub check {
|
|||||||
$self->{output}->output_add(severity => $exit,
|
$self->{output}->output_add(severity => $exit,
|
||||||
short_msg => sprintf("Cpu '%s' temperature is %s celsius degrees", $result->{bladeCPUMark}, $result->{bladeCPUTemperature}));
|
short_msg => sprintf("Cpu '%s' temperature is %s celsius degrees", $result->{bladeCPUMark}, $result->{bladeCPUTemperature}));
|
||||||
}
|
}
|
||||||
$self->{output}->perfdata_add(label => 'temperature_' . $result->{bladeCPUMark}, unit => 'C',
|
$self->{output}->perfdata_add(
|
||||||
value => $result->{bladeCPUTemperature},
|
label => 'temperature', unit => 'C',
|
||||||
warning => $warn,
|
nlabel => 'hardware.cpu.temperature.celsius',
|
||||||
critical => $crit,
|
instances => $result->{bladeCPUMark},
|
||||||
min => 0
|
value => $result->{bladeCPUTemperature},
|
||||||
);
|
warning => $warn,
|
||||||
|
critical => $crit, min => 0
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
$self->{output}->output_add(long_msg => sprintf("Cpu '%s' status is '%s' [instance = %s]",
|
$self->{output}->output_add(long_msg => sprintf("Cpu '%s' status is '%s' [instance = %s]",
|
||||||
@ -98,4 +100,4 @@ sub check {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
1;
|
1;
|
||||||
|
@ -64,12 +64,15 @@ sub check {
|
|||||||
short_msg => sprintf("Temperature '%s' is '%s' celsius degrees", $result->{bladeTemperatureIndex}, $result->{bladeTemperatureReading}));
|
short_msg => sprintf("Temperature '%s' is '%s' celsius degrees", $result->{bladeTemperatureIndex}, $result->{bladeTemperatureReading}));
|
||||||
}
|
}
|
||||||
|
|
||||||
$self->{output}->perfdata_add(label => 'temperature_' . $result->{bladeTemperatureIndex}, unit => 'C',
|
$self->{output}->perfdata_add(
|
||||||
value => $result->{bladeTemperatureReading},
|
label => 'temperature', unit => 'C',
|
||||||
warning => $warn,
|
nlabel => 'hardware.temperature.celsius',
|
||||||
critical => $crit
|
instances => $result->{bladeTemperatureIndex},
|
||||||
);
|
value => $result->{bladeTemperatureReading},
|
||||||
|
warning => $warn,
|
||||||
|
critical => $crit
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
1;
|
1;
|
||||||
|
@ -72,7 +72,7 @@ my %storage_types_manage = (
|
|||||||
sub custom_usage_perfdata {
|
sub custom_usage_perfdata {
|
||||||
my ($self, %options) = @_;
|
my ($self, %options) = @_;
|
||||||
|
|
||||||
my ($label, $nlabel) = ('used', $self->{label});
|
my ($label, $nlabel) = ('used', $self->{nlabel});
|
||||||
my $value_perf = $self->{result_values}->{used};
|
my $value_perf = $self->{result_values}->{used};
|
||||||
if (defined($self->{instance_mode}->{option_results}->{free})) {
|
if (defined($self->{instance_mode}->{option_results}->{free})) {
|
||||||
($label, $nlabel) = ('free', 'storage.space.free.bytes');
|
($label, $nlabel) = ('free', 'storage.space.free.bytes');
|
||||||
|
@ -28,7 +28,7 @@ use warnings;
|
|||||||
sub custom_usage_perfdata {
|
sub custom_usage_perfdata {
|
||||||
my ($self, %options) = @_;
|
my ($self, %options) = @_;
|
||||||
|
|
||||||
my ($label, $nlabel) = ('used', $self->{label});
|
my ($label, $nlabel) = ('used', $self->{nlabel});
|
||||||
my $value_perf = $self->{result_values}->{used};
|
my $value_perf = $self->{result_values}->{used};
|
||||||
if (defined($self->{instance_mode}->{option_results}->{free})) {
|
if (defined($self->{instance_mode}->{option_results}->{free})) {
|
||||||
($label, $nlabel) = ('free', 'memory.free.bytes');
|
($label, $nlabel) = ('free', 'memory.free.bytes');
|
||||||
|
Loading…
x
Reference in New Issue
Block a user