enhance health status return

This commit is contained in:
garnier-quentin 2019-02-06 14:16:19 +01:00
parent bea8760570
commit 75cc803fab

View File

@ -67,65 +67,39 @@ sub run {
# CPU # CPU
if (defined($cpuStatusInfo)) { if (defined($cpuStatusInfo)) {
$data->{$entity_value}->{cpu_info} = { ok => 0, yellow => 0, red => 0, summary_red => [], summary_yellow => [] }; $data->{$entity_value}->{cpu_info} = [];
foreach (@$cpuStatusInfo) { foreach (@$cpuStatusInfo) {
if ($_->status->key =~ /^red$/i) { push @{$data->{$entity_value}->{cpu_info}}, { status => $_->status->key, name => $_->name, summary => $_->status->summary };
push @{$data->{$entity_value}->{cpu_info}->{summary_red}}, { name => $_->name, summary => $_->status->summary };
$data->{$entity_value}->{cpu_info}->{red}++;
} elsif ($_->status->key =~ /^yellow$/i) {
push @{$data->{$entity_value}->{cpu_info}->{summary_yellow}}, { name => $_->name, summary => $_->status->summary };
$data->{$entity_value}->{cpu_info}->{yellow}++;
} else {
$data->{$entity_value}->{cpu_info}->{ok}++;
}
} }
} }
# Memory # Memory
if (defined($memoryStatusInfo)) { if (defined($memoryStatusInfo)) {
$data->{$entity_value}->{memory_info} = { ok => 0, yellow => 0, red => 0, summary_red => [], summary_yellow => [] }; $data->{$entity_value}->{memory_info} = [];
foreach (@$memoryStatusInfo) { foreach (@$memoryStatusInfo) {
if ($_->status->key =~ /^red$/i) { push @{$data->{$entity_value}->{memory_info}}, { status => $_->status->key, name => $_->name, summary => $_->status->summary };
push @{$data->{$entity_value}->{memory_info}->{summary_red}}, { name => $_->name, summary => $_->status->summary };
$data->{$entity_value}->{memory_info}->{red}++;
} elsif ($_->status->key =~ /^yellow$/i) {
push @{$data->{$entity_value}->{memory_info}->{summary_yellow}}, { name => $_->name, summary => $_->status->summary };
$data->{$entity_value}->{memory_info}->{yellow}++;
} else {
$data->{$entity_value}->{memory_info}->{ok}++;
}
} }
} }
# Storage # Storage
if (defined($self->{storage_status}) && defined($storageStatusInfo)) { if (defined($self->{storage_status}) && defined($storageStatusInfo)) {
$data->{$entity_value}->{storage_info} = { ok => 0, yellow => 0, red => 0, summary_red => [], summary_yellow => [] }; $data->{$entity_value}->{storage_info} = [];
foreach (@$storageStatusInfo) { foreach (@$storageStatusInfo) {
if ($_->status->key =~ /^red$/i) { push @{$data->{$entity_value}->{storage_info}}, { status => $_->status->key, name => $_->name, summary => $_->status->summary };
push @{$data->{$entity_value}->{storage_info}->{summary_red}}, { name => $_->name, summary => $_->status->summary };
$data->{$entity_value}->{storage_info}->{red}++;
} elsif ($_->status->key =~ /^yellow$/i) {
push @{$data->{$entity_value}->{storage_info}->{summary_yellow}}, { name => $_->name, summary => $_->status->summary };
$data->{$entity_value}->{storage_info}->{yellow}++;
} else {
$data->{$entity_value}->{storage_info}->{ok}++;
}
} }
} }
# Sensor # Sensor
if (defined($numericSensorInfo)) { if (defined($numericSensorInfo)) {
$data->{$entity_value}->{sensor_info} = { ok => 0, yellow => 0, red => 0, summary_red => [], summary_yellow => [] }; $data->{$entity_value}->{sensor_info} = [];
foreach (@$numericSensorInfo) { foreach (@$numericSensorInfo) {
if ($_->healthState->key =~ /^red$/i) { push @{$data->{$entity_value}->{sensor_info}}, {
push @{$data->{$entity_value}->{sensor_info}->{summary_red}}, { type => $_->sensorType, name => $_->name, summary => $_->healthState->summary }; status => $_->healthState->key,
$data->{$entity_value}->{sensor_info}->{red}++; type => $_->sensorType, name => $_->name, summary => $_->healthState->summary,
} elsif ($_->healthState->key =~ /^yellow$/i) { current_reading => $_->currentReading,
push @{$data->{$entity_value}->{sensor_info}->{summary_yellow}}, { type => $_->sensorType, name => $_->name, summary => $_->healthState->summary }; power10 => $_->unitModifier,
$data->{$entity_value}->{sensor_info}->{yellow}++; unit => $_->baseUnits
} else { };
$data->{$entity_value}->{sensor_info}->{ok}++;
}
} }
} }
} }