NAME

SNMP::Info::CiscoStats - Perl5 Interface to CPU and Memory stats for Cisco Devices

AUTHOR

Eric Miller, Max Baker, Sam Stickland

SYNOPSIS

# Let SNMP::Info determine the correct subclass for you.
my $ciscostats = new SNMP::Info(
                   AutoSpecify => 1,
                   Debug       => 1,
                   # These arguments are passed directly on to SNMP::Session
                   DestHost    => 'myswitch',
                   Community   => 'public',
                   Version     => 2
                   )
   or die "Can't connect to DestHost.\n";

my $class      = $ciscostats->class();
print "SNMP::Info determined this device to fall under subclass : $class\n";

DESCRIPTION

SNMP::Info::CiscoStats is a subclass of SNMP::Info that provides cpu, memory, os and version information about Cisco Devices.

Use or create in a subclass of SNMP::Info. Do not use directly.

Inherited Classes

None.

Required MIBs

CISCO-PRODUCTS-MIB
CISCO-PROCESS-MIB
CISCO-MEMORY-POOL-MIB
SNMPv2-MIB
OLD-CISCO-SYSTEM-MIB
CISCO-STACK-MIB
CISCO-ENTITY-VENDORTYPE-OID-MIB
CISCO-FLASH-MIB
ENTITY-MIB
CISCO-IMAGE-MIB

MIBs can be found at ftp://ftp.cisco.com/pub/mibs/v2/v2.tar.gz

GLOBALS

$ciscostats->cpu()

Returns ios_cpu() or cat_cpu(), whichever is available.

$ciscostats->cpu_1min()

Returns ios_cpu_1min() or cat_cpu1min(), whichever is available.

$ciscostats->cpu_5min()

Returns ios_cpu_5min() or cat_cpu5min(), whichever is available.

$ciscostats->mem_total()

Returns mem_free() + mem_used()

$ciscostats->vendor()
'cisco'
$ciscostats->os()

Tries to parse if device is running 'IOS', 'CatOS', 'IOS-XE' or something else from description()

Available values:

'ios'          for Cisco IOS
'ios-xe'       for Cisco IOS XE
'ios-xr'       for Cisco IOS XR
'pix'          for Cisco PIX
'asa'          for Cisco ASA
'fwsm'         for Single-mode FWSM
'fwsm-admin'   for Admin context of multi-context FWSM
'fwsm-context' for Standard context of multi-context FWSM
'ace-admin'    for Admin context of ACE module
'ace-context'  for Standard context of ACE module (NB: No OS version
                    detection is available, but will be the same as it's
                    'ace admin')
'css'          for Cisco Content Switch
'css-sca'      for Cisco Content Switch Secure Content Acceleration
'san-os'       for Cisco SAN-OS
$ciscostats->os_ver()

Tries to parse device operating system version from description(), falls back to parsing CISCO-IMAGE-MIB::ciscoImageString if needed

$ciscostats->os_bin()

Tries to parse ROMMON version from rom_id() string

$ciscostats->ios_cpu()

Current CPU usage in percent.

1.3.6.1.4.1.9.2.1.56.0 = OLD-CISCO-CPU-MIB:avgBusyPer

$ciscostats->ios_cpu_1min()

Average CPU Usage in percent over the last minute.

1.3.6.1.4.1.9.2.1.57.0

$ciscostats->ios_cpu_5min()

Average CPU Usage in percent over the last 5 minutes.

1.3.6.1.4.1.9.2.1.58.0

$ciscostats->cat_cpu()

Current CPU usage in percent.

CISCO-PROCESS-MIB::cpmCPUTotal5sec.9

$ciscostats->cat_cpu_1min()

Average CPU Usage in percent over the last minute.

CISCO-PROCESS-MIB::cpmCPUTotal1min.9

$ciscostats->cat_cpu_5min()

Average CPU Usage in percent over the last 5 minutes.

CISCO-PROCESS-MIB::cpmCPUTotal5min.9

$ciscostats->mem_free()

Main DRAM free of the device in bytes.

CISCO-MEMORY-POOL-MIB::ciscoMemoryPoolFree

$ciscostats->mem_used()

Main DRAM used of the device in bytes.

CISCO-MEMORY-POOL-MIB::ciscoMemoryPoolUsed

$ciscostats->mem_total()

Main DRAM of the device in bytes.

CISCO-MEMORY-POOL-MIB::ciscoMemoryPoolFree + CISCO-MEMORY-POOL-MIB::ciscoMemoryPoolUsed

$ciscostats->flashmem_total()

Flash memory of the device in bytes.

CISCO-FLASH-MIB::ciscoFlashDeviceSize

TABLE METHODS

Cisco Memory Pool Table (ciscoMemoryPoolTable)

$ciscostats->cisco_mem_free()

The number of bytes from the memory pool that are currently unused on the managed device.

(ciscoMemoryPoolFree)

$ciscostats->cisco_mem_used()

The number of bytes from the memory pool that are currently in use by applications on the managed device.

(ciscoMemoryPoolUsed)

Cisco Flash Device Table (ciscoFlashDeviceTable)

$ciscostats->cisco_flash_size()

Total size of the Flash device. For a removable device, the size will be zero if the device has been removed.

(ciscoFlashDeviceSize)

Cisco Image Table (ciscoImageTable)

$ci->ci_images()

Returns the table of image strings.

ciscoImageString