SNMP::Info::CiscoStats(3) Perl5 Interface to CPU and Memory stats for Cisco

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"