SNMP::Info::CiscoStats(3)

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"