----- Original Message ----- From: "Daniel J McDonald" <dan.mcdonald at austinenergy.com> To: "Hobbit List" <hobbit at hswn.dk> Sent: Friday, March 25, 2005 4:36 PM Subject: Re: [hobbit] monitoring (cisco) routers
On Thu, 2005-03-24 at 18:26 +0100, Marco Avvisano wrote:
Someone have tried scripts to monitor cpu, memory and temperature for cisco routers, that work correctly in hobbit (also the rrd graphs)?
I do that using mrtg, and then run bbmrtg.pl to pull the stats into hobbit.
Temperature monitoring has been flaky on Cisco for a long time - are you using devices with good temperature reporting?
I monitor many cisco devices (especially 7000 series), and generally i not have temperature problems.
Thanks for your mrtg files, but i'm tryng to find a good script that are compatible with hobbit graphs generation
Marco
My cpu/memory template for mrtg:
$head_lines .= <<ECHO #.....................................................................
Router processor utilization.
ECHO ; snmpMIB_to_OID("/usr/share/snmp/mibs/CISCO-SMI-V1SMI.my"); snmpMIB_to_OID("/usr/share/snmp/mibs/CISCO-TC-V1SMI.my"); snmpMIB_to_OID("/usr/share/snmp/mibs/CISCO-PROCESS-MIB-V1SMI.my");
my %cpu; my (@temp) = snmpwalk($router_connect,'cpmCPUTotal5secRev'); foreach my $tempi(@temp) { $tempi =~ /(\d+):\d/; my $instance=$1; my $target_name=$router_name.".cpu".$instance; $cpu{$instance}++; $target_lines .= <<CPU Target[$target_name]: cpmCPUTotal5secRev.$instance&cpmCPUTotal1minRev.$instance: $router_connect MaxBytes[$target_name]: 100 routers.cgi*ShortDesc[$target_name]: CPU # $instance routers.cgi*Options[$target_name]: nototal bb*host[$target_name]: $router_name bb*svc[$target_name]: cpu bb*red[$target_name]: 90 bb*yellow[$target_name]: 80 Options[$target_name]: gauge, unknaszero Directory[$target_name]: $directory_name WithPeak[$target_name]: wmy YLegend[$target_name]: % Utilization ShortLegend[$target_name]: % Legend1[$target_name]: 5 Second Load Legend2[$target_name]: 1 Minute Load LegendI[$target_name]: 5sec : LegendO[$target_name]: 1min : Title[$target_name]: $sysname PageTop[$target_name]: <H1>$sysname Processor Load</H1> <TABLE> <TR><TD>System:</TD><TD>$sysname </TD></TR> <TR><TD>Location:</TD><TD>$syslocation </TD></TR> </TABLE> CPU ; }
my (@temp) = snmpwalk($router_connect,'cpmCPUTotal5sec'); foreach my $tempi(@temp) { $tempi =~ /(\d+):\d/; my $instance=$1; next if exists $cpu{$instance}; my $target_name=$router_name.".cpu".$instance; $cpu{$instance}++; $target_lines .= <<CPUOLD Target[$target_name]: cpmCPUTotal5sec.$instance&cpmCPUTotal1min.$instance:$route r_connect MaxBytes[$target_name]: 100 routers.cgi*ShortDesc[$target_name]: CPU # $instance routers.cgi*Options[$target_name]: nototal bb*host[$target_name]: $router_name bb*svc[$target_name]: cpu bb*red[$target_name]: 90 bb*yellow[$target_name]: 80 Options[$target_name]: gauge, unknaszero Directory[$target_name]: $directory_name WithPeak[$target_name]: wmy YLegend[$target_name]: % Utilization ShortLegend[$target_name]: % Legend1[$target_name]: 5 Second Load Legend2[$target_name]: 1 Minute Load LegendI[$target_name]: 5sec : LegendO[$target_name]: 1min : Title[$target_name]: $sysname PageTop[$target_name]: <H1>$sysname Processor Load</H1> <TABLE> <TR><TD>System:</TD><TD>$sysname </TD></TR> <TR><TD>Location:</TD><TD>$syslocation </TD></TR> </TABLE> CPUOLD ; }
snmpMIB_to_OID("/usr/share/snmp/mibs/CISCO-QOS-PIB-MIB-V1SMI.my"); snmpMIB_to_OID("/usr/share/snmp/mibs/CISCO-MEMORY-POOL-MIB-V1SMI.my"); my (@temp) = snmpwalk($router_connect,'ciscoMemoryPoolName'); foreach my $tempi(@temp) { $tempi =~ /(\d+):(.+)/; my $instance=$1; next if $2 !~ /Processor/; my ($used, $free) = snmpget($router_connect,'ciscoMemoryPoolUsed.'.$instance, 'ciscoMemoryPoolFree.'.$instance); my $target_name=$router_name.".memory"; my $maxsize = $used+$free; $target_lines .= <<DISK
#---------------------------------------------------------------------------
Memory Utilization
Target[$target_name]: ciscoMemoryPoolFree.$instance&ciscoMemoryPoolLargestFree.$ instance: $router_connect YLegend[$target_name]: Bytes Free Options[$target_name]: gauge, unknaszero Directory[$target_name]: $directory_name MaxBytes[$target_name]: $maxsize ShortLegend[$target_name]: bytes routers.cgi*ShortDesc[$target_name]: Memory routers.cgi*Options[$target_name]: nototal bb*host[$target_name]: $router_name bb*svc[$target_name]: memory bb*red[$target_name]: 5%:99% bb*yellow[$target_name]: 7%:98% Legend1[$target_name]: Free Mem Legend2[$target_name]: Largest Block LegendI[$target_name]: Free LegendO[$target_name]: Block WithPeak[$target_name]: ymw Title[$target_name]: $sysname PageTop[$target_name]: <H1>Memory on $sysname/H1> <TABLE> <TR><TD>System:</TD><TD>$sysname </TD></TR> <TR><TD>Location:</TD><TD>$syslocation </TD></TR> </TABLE> DISK ; }
I'm tryng bb-xsnmp script, but i have some problems.
Marco
To unsubscribe from the hobbit list, send an e-mail to hobbit-unsubscribe at hswn.dk
To unsubscribe from the hobbit list, send an e-mail to hobbit-unsubscribe at hswn.dk