Retour (si a marche) de IOG.
C'est nul le Perl :) Donc au lieu de passer par la lib snmp qui fait pas de TCP, a passe par snmpget... N. darcs-hash:20030222122957-a279a-46df5cd2a49952e5a8e846eb968ce2fef7ade718.gz
This commit is contained in:
parent
d41901ec39
commit
f8a54ea342
1 changed files with 44 additions and 2 deletions
|
@ -84,7 +84,7 @@ open(CONFIG,$cfgfile) || die("Cannot open $cfgfile!");
|
|||
my($name,$host,$community,$inoid,$outoid,$path) = split(/:/, $_);
|
||||
$path =~ s/\n//;
|
||||
$datafile = "$name".".dat";
|
||||
my @results = snmpget($host,$community,$inoid,$outoid);
|
||||
my @results = snmpget2($host,$community,$inoid,$outoid);
|
||||
next if ($results[0] eq "error");
|
||||
$inoctets = $results[0];
|
||||
$outoctets = $results[1];
|
||||
|
@ -161,11 +161,53 @@ sub snmpgetup {
|
|||
|
||||
}
|
||||
|
||||
|
||||
#####################################################################################
|
||||
# Section personnalisée pour faire du SNMP en TCP.
|
||||
# NS 22/02/03
|
||||
#####################################################################################
|
||||
sub snmpget2 {
|
||||
my($host, $community, $inoid, $outoid) = @_;
|
||||
|
||||
open IN, "snmpget -T TCP $host $community interfaces.ifTable.ifEntry.$inoid |";
|
||||
my $inresult = <IN>;
|
||||
chomp($inresult);
|
||||
close(IN);
|
||||
|
||||
open OUT, "snmpget -T TCP $host $community interfaces.ifTable.ifEntry.$outoid |";
|
||||
my $outresult = <OUT>;
|
||||
chomp($outresult);
|
||||
close(OUT);
|
||||
|
||||
my @intable = split(/ /,$inresult );
|
||||
my @outtable = split(/ /,$outresult );
|
||||
|
||||
my @results = ($intable[-1],$outtable[-1]);
|
||||
|
||||
return @results;
|
||||
}
|
||||
|
||||
sub snmpgetup2 {
|
||||
my($host, $community, $upoid) = @_;
|
||||
|
||||
open UP, "snmpget -T TCP $host $community $upoid |";
|
||||
my $uptimeresult = <UP>;
|
||||
chomp($uptimeresult);
|
||||
close(UP);
|
||||
|
||||
$uptimeresult =~ s/^.*\) //;
|
||||
$uptimeresult =~ s/...$//;
|
||||
|
||||
return $uptimeresult;
|
||||
}
|
||||
####################################################################################
|
||||
|
||||
|
||||
sub chkuptime {
|
||||
|
||||
$_ =~ s/\[|\]//g;
|
||||
my($uphost,$upip,$upcommunity,$upoid,$upfile) = split (/:/, $_);
|
||||
my $upresult = snmpgetup($upip,$upcommunity,$upoid);
|
||||
my $upresult = snmpgetup2($upip,$upcommunity,$upoid);
|
||||
|
||||
tie(%inf, 'SDBM_File', ($upfile."$main::SL"."uptimes"), O_RDWR|O_CREAT, 0640)
|
||||
or print "WARNING: Error opening uptime database file!\n";
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue