Bonjour à tous,
à partir du langage PERL et du protocole SNMP, je voudrai récupérer l'autonomie restante d'une batterie sur un onduleur MGEUPS.
Voici le code que j'ai ecrit :
Cependant, lorsque j'execute ce script, j'ai le message d'erreur suivant :
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
21
22
23
24
25
26
27
28
29
30
31
32
33 #!/usr/bin/perl use strict; use Net::SNMP; my ($session, $error) = Net::SNMP->session( -hostname => shift || '192.168.254.250', // Adresse IP de l'onduleur \\ -community => shift || 'public', -port => shift || 161 ); if (!defined($session)) { printf("ERROR: %s.\n", $error); exit 1; } my $sysUpTime = '1.3.6.1.4.1.705.1.4.7' // MIB de l'onduleur \\ my $result = $session->get_request( -varbindlist => [$sysUpTime]); if (!defined($result)) { printf("ERROR: %s.\n", $session->error); $session->close; exit 1; } printf("sysUpTime for host '%s' is %s\n", $session->hostname, $result->{$sysUpTime}); $session->close; exit 0;
syntax error at check_tempSAVE.pl line 19, near "my "
Global symbol "$result" requires explicit package name at check_tempSAVE.pl line 19.
Global symbol "$sysUpTime" requires explicit package name at check_tempSAVE.pl line 20.
Global symbol "$result" requires explicit package name at check_tempSAVE.pl line 22.
Global symbol "$result" requires explicit package name at check_tempSAVE.pl line 29.
Execution of check_tempSAVE.pl aborted due to compilation errors.
Pouvez-vous m'aider ?
merci bcp
Partager