1
package HP::Proliant::Component::CpuSubsystem;
2
our @ISA = qw(HP::Proliant::Component);
5
use constant { OK => 0, WARNING => 1, CRITICAL => 2, UNKNOWN => 3 };
9
################################## scrapiron ##########
12
runtime => $params{runtime},
13
rawdata => $params{rawdata},
14
method => $params{method},
15
condition => $params{condition},
16
status => $params{status},
20
extendedinfo => undef,
23
if ($self->{method} eq 'snmp') {
24
return HP::Proliant::Component::CpuSubsystem::SNMP->new(%params);
25
} elsif ($self->{method} eq 'cli') {
26
return HP::Proliant::Component::CpuSubsystem::CLI->new(%params);
36
$self->add_info('checking cpus');
37
if (scalar (@{$self->{cpus}}) == 0) {
39
# $self->overall_check(); # sowas ist mir nur einmal untergekommen
41
foreach (@{$self->{cpus}}) {
49
return scalar @{$self->{cpus}};
54
foreach (@{$self->{cpus}}) {
60
package HP::Proliant::Component::CpuSubsystem::Cpu;
61
our @ISA = qw(HP::Proliant::Component::CpuSubsystem);
64
use constant { OK => 0, WARNING => 1, CRITICAL => 2, UNKNOWN => 3 };
70
runtime => $params{runtime},
71
cpqSeCpuSlot => $params{cpqSeCpuSlot},
72
cpqSeCpuUnitIndex => $params{cpqSeCpuUnitIndex},
73
cpqSeCpuName => $params{cpqSeCpuName},
74
cpqSeCpuStatus => $params{cpqSeCpuStatus},
77
extendedinfo => undef,
85
$self->blacklist('c', $self->{cpqSeCpuUnitIndex});
86
if ($self->{cpqSeCpuStatus} ne "ok") {
87
if ($self->{runtime}->{options}{scrapiron} &&
88
($self->{cpqSeCpuStatus} eq "unknown")) {
89
$self->add_info(sprintf "cpu %d probably ok (%s)",
90
$self->{cpqSeCpuUnitIndex}, $self->{cpqSeCpuStatus});
92
$self->add_info(sprintf "cpu %d needs attention (%s)",
93
$self->{cpqSeCpuUnitIndex}, $self->{cpqSeCpuStatus});
94
$self->add_message(CRITICAL, $self->{info});
97
$self->add_info(sprintf "cpu %d is %s",
98
$self->{cpqSeCpuUnitIndex}, $self->{cpqSeCpuStatus});
100
$self->add_extendedinfo(sprintf "cpu_%s=%s",
101
$self->{cpqSeCpuUnitIndex}, $self->{cpqSeCpuStatus});
106
printf "[CPU_%s]\n", $self->{cpqSeCpuUnitIndex};
107
foreach (qw(cpqSeCpuSlot cpqSeCpuUnitIndex cpqSeCpuName cpqSeCpuStatus)) {
108
printf "%s: %s\n", $_, $self->{$_};
110
printf "info: %s\n", $self->{info};