2011-06-23 11 views
1

私はCiscoスイッチに対してインターフェイスにエラーがあるかどうかを確認するために使用している次のスクリプトを用意しています。Perl Net :: SNMP :: Interfaces | Interaceのエラー

のPerlスクリプト(switch.pl):

#!/usr/bin/perl 
use warnings; 
use strict; 
use DBI; 
use Net::SNMP; 
use Net::SNMP::Interfaces; 
use Net::SNMP::Interfaces::Details; 

my @hosts; 
push (@hosts, switch1); 

foreach my $item (@hosts) { 
     checkinterfaces($item); 
} 

sub checkinterfaces { 
    my $host = shift; 
    my $interfaces = Net::SNMP::Interfaces->new(Hostname => $host, Community => 'public'); 
    my @inter = $interfaces->all_interfaces(); 

    for my $i (@inter) { 
     my $if = $i->name; 
     my $inerr = $i->ifInErrors; 
     my $outerr = $i->ifOutErrors; 
       if ($inerr > 0 || $outerr > 0){ 
         print "$if is experiencing errors - Input Errors:$inerr/Output Errors:$outerr\n"; 
       } 
} 

最初のパス:

$ perl switch.pl 
FastEthernet0/1 is experiencing errors - Input Errors:2201991/Output Errors:0 
私が経験しています唯一の問題は、私のインターフェイス上の明確なカウンタは、ネット:: SNMPはまだそれらを示していますポート上の

クリアカウンター:

switch1#sh int fa0/1                                                    
FastEthernet0/1 is up, line protocol is up (connected) 
.... 
    15470020 packets input, 2415584329 bytes, 0 no buffer 
    Received 29399 broadcasts (0 multicast) 
    0 runts, 1656 giants, 0 throttles 
    2199177 input errors, 2197521 CRC, 0 frame, 0 overrun, 0 ignored 
    0 watchdog, 22890 multicast, 0 pause input 
    0 input packets with dribble condition detected 
    53541600 packets output, 266583342 bytes, 0 underruns 
    0 output errors, 0 collisions, 2 interface resets 
    0 babbles, 0 late collision, 0 deferred 
    0 lost carrier, 0 no carrier, 0 PAUSE output 
    0 output buffer failures, 0 output buffers swapped out 
switch1#clear counters fa0/1 
Clear "show interface" counters on this interface [confirm]y 
switch1#sh int fa0/1 
FastEthernet0/1 is up, line protocol is up (connected) 
.... 
    1229 packets input, 1905693 bytes, 0 no buffer 
    Received 0 broadcasts (0 multicast) 
    0 runts, 0 giants, 0 throttles 
    297 input errors, 297 CRC, 0 frame, 0 overrun, 0 ignored 
    0 watchdog, 0 multicast, 0 pause input 
    0 input packets with dribble condition detected 
    1334 packets output, 141440 bytes, 0 underruns 
    0 output errors, 0 collisions, 0 interface resets 
    0 babbles, 0 late collision, 0 deferred 
    0 lost carrier, 0 no carrier, 0 PAUSE output 
    0 output buffer failures, 0 output buffers swapped out 
switch1# 

セカンドパス:

インターフェイスにはまだエラーが発生していますが、正しい値を取得していないようです。

答えて

0

snmpを使用してカウンタを0に戻す必要があります。

関連する問題