Bonjour,
Je ne sais pas si je suis dans le bon forum dans ce cas merci de me modérer
Tous les plugins pour avoir la température des CPU ne me donne pas une bonne mise en forme du résultat.
exemple :
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 donc pris mon courage après avoir lu la doc de djibril merci à lui
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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) !: http://djibril.developpez.com/tutori...n-nagios-perl/
Voici mon script :
Voici ce que j'obtiens :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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"
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.
Partager