plugins Nagios check de température des CPU.
Bonjour,
Je ne sais pas si je suis dans le bon forum dans ce cas merci de me modérer :mouarf:
Tous les plugins pour avoir la température des CPU ne me donne pas une bonne mise en forme du résultat.
exemple :
Code:
1 2
| snmpget -v2c -c public host .1.3.6.1.4.1.2021.13.16.5.1.3.1
UCD-SNMP-MIB::ucdExperimental.16.5.1.3.1 = Gauge32: 42000 |
J'ai trouvé un script perl déjà tout fait mais je n'ai pas rèeussi à le faire fonctionner j'ai toujours l'erreur suivante :
Code:
1 2
| check_snmp_temperature.pl -H host -2 -C public -D .1.3.6.1.4.1.2021.13.16.2.1.3 -i 1000C -w 60 -c 80
Specify system type (-T) OR base SNMP OIDs for names (-N) and data (-D) tables OR exact list of sensor names (-n) and data OIDs (-d) ! |
J'ai donc pris mon courage après avoir lu la doc de djibril merci à lui :ccool::kiss: : http://djibril.developpez.com/tutori...n-nagios-perl/
Voici mon script :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| #!/usr/bin/perl -w
use strict;
use Net::SNMP;
my $host= "host" ;
my $community = "public" ;
# requires a hostname and a community string as its arguments
(my $session, my $error) = Net::SNMP->session(Hostname => $host,
Community => $community);
die "session error: $error" unless ($session);
# Check OID temp CPU
# 1.3.6.1.4.1.2021.13.16.5.1.3.1
my $result = $session->get_request("1.3.6.1.4.1.2021.13.16.5.1.3.1");
print "Flag Result $result\n";
die "request error: ".$session->error unless (defined $result);
$session->close;
print "CPU Temp : ".$result->{"1.3.6.1.4.1.2021.13.16.5.1.3.1"}."\n" |
Voici ce que j'obtiens :
Flag Result HASH(0x8081d70)
CPU Temp : 45000
Mon soucis était prévisible car je pointe sur l'OID. Je ne comprend comment obtenir la valeur lisible de $result afin de la mettre en forme de style "SNMP OK CPU TEMP 45 C"
Merci de votre aide.