From 8abe508cfd4e1745095bf3c33a6d1697621a0782 Mon Sep 17 00:00:00 2001 From: Tony Murray Date: Wed, 7 Feb 2018 20:47:56 -0600 Subject: [PATCH] Cisco Processor update (#8216) Fix issues with newer devices by updating CISCO-PROCESS-MIB Detect individual cores on supported processors --- LibreNMS/OS/Shared/Cisco.php | 39 +- mibs/CISCO-PROCESS-MIB | 1610 ++++++++++++++++++++++++----- tests/data/iosxe_c3650.json | 53 + tests/snmpsim/iosxe_c3650.snmprec | 46 + 4 files changed, 1455 insertions(+), 293 deletions(-) create mode 100644 tests/data/iosxe_c3650.json create mode 100644 tests/snmpsim/iosxe_c3650.snmprec diff --git a/LibreNMS/OS/Shared/Cisco.php b/LibreNMS/OS/Shared/Cisco.php index 4b579bc9fc..4cab84e4c8 100644 --- a/LibreNMS/OS/Shared/Cisco.php +++ b/LibreNMS/OS/Shared/Cisco.php @@ -70,17 +70,34 @@ class Cisco extends OS implements ProcessorDiscovery $descr = "Processor $index"; } - $processors[] = Processor::discover( - 'cpm', - $this->getDeviceId(), - $usage_oid, - $index, - $descr, - 1, - $usage, - null, - $entPhysicalIndex - ); + if (is_array($entry['cpmCore5min'])) { + // This CPU has data per individual core + foreach ($entry['cpmCore5min'] as $core_index => $core_usage) { + $processors[] = Processor::discover( + 'cpm', + $this->getDeviceId(), + ".1.3.6.1.4.1.9.9.109.1.1.2.1.5.$index.$core_index", + "$index.$core_index", + "$descr: Core $core_index", + 1, + $core_usage, + null, + $entPhysicalIndex + ); + } + } else { + $processors[] = Processor::discover( + 'cpm', + $this->getDeviceId(), + $usage_oid, + $index, + $descr, + 1, + $usage, + null, + $entPhysicalIndex + ); + } } if (empty($processors)) { diff --git a/mibs/CISCO-PROCESS-MIB b/mibs/CISCO-PROCESS-MIB index b504a26b1c..e93b11076f 100644 --- a/mibs/CISCO-PROCESS-MIB +++ b/mibs/CISCO-PROCESS-MIB @@ -1,12 +1,12 @@ -- ***************************************************************** -- CISCO-PROCESS-MIB.my: MIB for CPU and process statistics --- +-- -- August 1998, Ramanathan R. Kavasseri --- --- Copyright (c) 1998, 2001, 2003, 2006-2008 by cisco Systems Inc. +-- +-- Copyright (c) 1998, 2001, 2003, 2006-2011 by cisco Systems Inc. -- All rights reserved. -- ***************************************************************** --- +-- -- This mib was extracted from RFC xxx CISCO-PROCESS-MIB DEFINITIONS ::= BEGIN @@ -17,7 +17,8 @@ IMPORTS Counter32, Gauge32, Unsigned32, - NOTIFICATION-TYPE + NOTIFICATION-TYPE, + Counter64 FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP, @@ -27,18 +28,22 @@ IMPORTS DisplayString, RowStatus, TruthValue, - RowPointer + RowPointer, + TEXTUAL-CONVENTION FROM SNMPv2-TC SnmpAdminString FROM SNMP-FRAMEWORK-MIB - EntPhysicalIndexOrZero + CounterBasedGauge64 + FROM HCNUM-TC + EntPhysicalIndexOrZero, + Unsigned64 FROM CISCO-TC ciscoMgmt FROM CISCO-SMI; ciscoProcessMIB MODULE-IDENTITY - LAST-UPDATED "200703230000Z" + LAST-UPDATED "201106230000Z" ORGANIZATION "Cisco Systems, Inc." CONTACT-INFO "Cisco Systems @@ -53,40 +58,98 @@ ciscoProcessMIB MODULE-IDENTITY E-mail: cs-snmp@cisco.com" DESCRIPTION "The MIB module to describe active system processes. - Virtual Machine refers to those OS which can run the + Virtual Machine refers to those OS which can run the code or process of a different executional model OS. - Virtual Process assume the executional model + Virtual Process assume the executional model of a OS which is different from Native OS. Virtual Processes are also referred as Tasks. Thread is a sequence of instructions to be executed within a program. Thread which adhere to POSIX standard is referred as a POSIX thread." + REVISION "201106230000Z" + DESCRIPTION + "Added new table cpmCoreTable as well as a new optoinal + compliance group cpmCoreGroup." + REVISION "201005060000Z" + DESCRIPTION + "Added the following new objects to the cpmCPUTotalTable. + cpmCPUMemoryCommitted, cpmCPUMemoryCommittedOvrFlow and + cpmCPUMemoryHCCommitted. + + Added new compliance group cpmCPUTotalMemoryCommitGroup which + includes Committed memory objects. + + Added new compliance cProcessMIBComplianceRev5 which + deprecates cProcessMIBComplianceRev4." + REVISION "200910120000Z" + DESCRIPTION + "Added TEXTUAL-CONVENTION called CPULoadAverage. + Added the following new objects to cpmCPUTotalTable. + cpmCPULoadAvg1min, cpmCPULoadAvg5min, cpmCPULoadAvg15min. + + Added new compliance group cpmCPULoadAvgGroup which includes + load average objects. + + Added new compliance cProcessMIBComplianceRev4 which + deprecates cProcessMIBComplianceRev3." + REVISION "200901230000Z" + DESCRIPTION + "Added the following new objects to cpmCPUTotalTable. + cpmCPUMemoryUsedOvrflw, cpmCPUMemoryHCUsed, + cpmCPUMemoryFreeOvrflw, cpmCPUMemoryHCFree, + cpmCPUMemoryKernelReservedOvrflw, cpmCPUMemoryHCKernelReserved, + cpmCPUMemoryLowestOvrflw, cpmCPUMemoryHCLowest + + Added the following new objects to cpmProcessExtRevTable. + cpmProcExtMemAllocatedRevOvrflw, cpmProcExtHCMemAllocatedRev, + cpmProcExtMemFreedRevOvrflw, cpmProcExtHCMemFreedRev, + cpmProcessTextSegmentSizeOvrflw, cpmProcessHCTextSegmentSize, + cpmProcessDataSegmentSizeOvrflw, cpmProcessHCDataSegmentSize, + cpmProcessStackSizeOvrflw, cpmProcessHCStackSize, + cpmProcessDynamicMemorySizeOvrflw, cpmProcessHCDynamicMemorySize + + Added the following new objects to cpmThreadTable. + cpmThreadStackSizeOvrflw, cpmThreadHCStackSize + + Added the following new objects to cpmVirtualProcessTable. + cpmVirtualProcessMemAllocatedOvrflw, + cpmVirtualProcessHCMemAllocated, + cpmVirtualProcessMemFreedOvrflw, cpmVirtualProcessHCMemFreed + + Added following new compliance groups. + cpmCPUTotalOverflowGroup, cpmCPUTotalOverflowGroup, + cpmProcessExtRevOverflowGroup, cpmProcessExtRevHCGroup, + cpmThreadOverflowGroup, cpmThreadHCGroup, + cpmVirtualProcessOverflowGroup, cpmVirtualProcessHCGroup + + Added new compliance cProcessMIBComplianceRev3 which deprecates + cProcessMIBComplianceRev2." REVISION "200703230000Z" DESCRIPTION "Added new objects to support POSIX compliant OS. Added - cpmThread, cpmThreadTable, cpmVirtualProcess, - cpmVirtualProcessTable and updated cpmCPUTotalTable, + cpmThread, cpmThreadTable, cpmVirtualProcess, + cpmVirtualProcessTable and updated cpmCPUTotalTable, cpmProcessExtRevTable. Added cProcessMIBComplianceRev2 - by deprecating cProcessMIBComplianceRev1. Added - cpmCPUPosixMemoryGroup, cpmPosixProcessGroup, + by deprecating cProcessMIBComplianceRev1. Added + cpmCPUPosixMemoryGroup, cpmPosixProcessGroup, cpmThreadGroup, cpmVirtualProcessGroup." REVISION "200301220000Z" DESCRIPTION "cpmCPUThresholdTable, cpmCPUHistoryTable, - cpmCPUProcessHistoryTable are added for CPU thresholding + cpmCPUProcessHistoryTable are added for CPU thresholding feature." REVISION "200105180000Z" DESCRIPTION "The objects cpmProcExtUtil5Sec, cpmProcExtUtil1Min, - cpmProcExtUtil5Min,cpmCPUTotal5sec, cpmCPUTotal1min + cpmProcExtUtil5Min,cpmCPUTotal5sec, cpmCPUTotal1min and cpmCPUTotal5min are deprecated to increase the value range as 0..100. The table cpmProcessExtTable - is deprecated. The new objects added are + is deprecated. The new objects added are cpmProcessExtRevTable, cpmProcExtMemAllocatedRev, - cpmProcExtMemFreedRev, cpmProcExtInvokedRev, + cpmProcExtMemFreedRev, cpmProcExtInvokedRev, cpmProcExtRuntimeRev, cpmProcExtUtil5SecRev, - cpmProcExtUtil1MinRev, cpmCPUTotal5MinRev, - cpmCPUTotal5secRev, cpmCPUTotal1minRev and + cpmProcExtUtil1MinRev, cpmCPUTotal5MinRev, + cpmCPUTotal5secRev, cpmCPUTotal1minRev and cpmCPUTotal5minRev." REVISION "9804150000Z" DESCRIPTION @@ -94,6 +157,21 @@ ciscoProcessMIB MODULE-IDENTITY ::= { ciscoMgmt 109 } + +CPULoadAverage ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "The average number of processes in the queue waiting for CPU + time over the last N minutes, where the N is defined by the + object using this TC. This is similar to UNIX/Linux system load + average. The calculation may vary by different OS kernels, so + refer to the specific system document of your interest. + The object value, which uses this TC, reflects the average + number of runnable processes with units of hundredths of + processes, i.e. a value of 183 indicates the average number of + runnable processes over the N minutes is 1.83." + SYNTAX Unsigned32 -- This MIB displays memory and CPU utilization on cisco devices. CPU -- utilization will give a general idea of how busy the processor is. -- The numbers are a ratio of the current idle time over the longest @@ -121,7 +199,7 @@ cpmCPUHistory OBJECT IDENTIFIER -- Cisco CPU Total Table cpmCPUTotalTable OBJECT-TYPE - SYNTAX SEQUENCE OF CpmCPUTotalEntry + SYNTAX SEQUENCE OF CpmCPUTotalEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION @@ -136,25 +214,39 @@ cpmCPUTotalEntry OBJECT-TYPE "Overall information about the CPU load. Entries in this table come and go as CPUs are added and removed from the system." - INDEX { cpmCPUTotalIndex } + INDEX { cpmCPUTotalIndex } ::= { cpmCPUTotalTable 1 } CpmCPUTotalEntry ::= SEQUENCE { - cpmCPUTotalIndex Unsigned32, - cpmCPUTotalPhysicalIndex EntPhysicalIndexOrZero, - cpmCPUTotal5sec Gauge32, - cpmCPUTotal1min Gauge32, - cpmCPUTotal5min Gauge32, - cpmCPUTotal5secRev Gauge32, - cpmCPUTotal1minRev Gauge32, - cpmCPUTotal5minRev Gauge32, - cpmCPUMonInterval Unsigned32, - cpmCPUTotalMonIntervalValue Gauge32, - cpmCPUInterruptMonIntervalValue Gauge32, - cpmCPUMemoryUsed Gauge32, - cpmCPUMemoryFree Gauge32, - cpmCPUMemoryKernelReserved Gauge32, - cpmCPUMemoryLowest Gauge32 + cpmCPUTotalIndex Unsigned32, + cpmCPUTotalPhysicalIndex EntPhysicalIndexOrZero, + cpmCPUTotal5sec Gauge32, + cpmCPUTotal1min Gauge32, + cpmCPUTotal5min Gauge32, + cpmCPUTotal5secRev Gauge32, + cpmCPUTotal1minRev Gauge32, + cpmCPUTotal5minRev Gauge32, + cpmCPUMonInterval Unsigned32, + cpmCPUTotalMonIntervalValue Gauge32, + cpmCPUInterruptMonIntervalValue Gauge32, + cpmCPUMemoryUsed Gauge32, + cpmCPUMemoryFree Gauge32, + cpmCPUMemoryKernelReserved Gauge32, + cpmCPUMemoryLowest Gauge32, + cpmCPUMemoryUsedOvrflw Gauge32, + cpmCPUMemoryHCUsed CounterBasedGauge64, + cpmCPUMemoryFreeOvrflw Gauge32, + cpmCPUMemoryHCFree Counter64, + cpmCPUMemoryKernelReservedOvrflw Gauge32, + cpmCPUMemoryHCKernelReserved CounterBasedGauge64, + cpmCPUMemoryLowestOvrflw Gauge32, + cpmCPUMemoryHCLowest CounterBasedGauge64, + cpmCPULoadAvg1min CPULoadAverage, + cpmCPULoadAvg5min CPULoadAverage, + cpmCPULoadAvg15min CPULoadAverage, + cpmCPUMemoryCommitted Gauge32, + cpmCPUMemoryCommittedOvrflw Gauge32, + cpmCPUMemoryHCCommitted CounterBasedGauge64 } cpmCPUTotalIndex OBJECT-TYPE @@ -165,7 +257,7 @@ cpmCPUTotalIndex OBJECT-TYPE "An index that uniquely represents a CPU (or group of CPUs) whose CPU load information is reported by a row in this table. This index is assigned arbitrarily by the engine - and is not saved over reboots." + and is not saved over reboots." ::= { cpmCPUTotalEntry 1 } cpmCPUTotalPhysicalIndex OBJECT-TYPE @@ -181,7 +273,7 @@ cpmCPUTotalPhysicalIndex OBJECT-TYPE in this entry correspond to more than one physical entity (or to no physical entity), or if the entPhysicalTable is not supported on the SNMP agent, the value of this object - must be zero." + must be zero." ::= { cpmCPUTotalEntry 2 } cpmCPUTotal5sec OBJECT-TYPE @@ -190,10 +282,10 @@ cpmCPUTotal5sec OBJECT-TYPE STATUS deprecated DESCRIPTION "The overall CPU busy percentage in the last 5 second - period. This object obsoletes the busyPer object from + period. This object obsoletes the busyPer object from the OLD-CISCO-SYSTEM-MIB. This object is deprecated by cpmCPUTotal5secRev which has the changed range of - value (0..100)." + value (0..100)." ::= { cpmCPUTotalEntry 3 } cpmCPUTotal1min OBJECT-TYPE @@ -202,10 +294,10 @@ cpmCPUTotal1min OBJECT-TYPE STATUS deprecated DESCRIPTION "The overall CPU busy percentage in the last 1 minute - period. This object obsoletes the avgBusy1 object from + period. This object obsoletes the avgBusy1 object from the OLD-CISCO-SYSTEM-MIB. This object is deprecated by cpmCPUTotal1minRev which has the changed range - of value (0..100)." + of value (0..100)." ::= { cpmCPUTotalEntry 4 } cpmCPUTotal5min OBJECT-TYPE @@ -214,10 +306,10 @@ cpmCPUTotal5min OBJECT-TYPE STATUS deprecated DESCRIPTION "The overall CPU busy percentage in the last 5 minute - period. This object deprecates the avgBusy5 object from + period. This object deprecates the avgBusy5 object from the OLD-CISCO-SYSTEM-MIB. This object is deprecated - by cpmCPUTotal5minRev which has the changed range - of value (0..100)." + by cpmCPUTotal5minRev which has the changed range + of value (0..100)." ::= { cpmCPUTotalEntry 5 } cpmCPUTotal5secRev OBJECT-TYPE @@ -227,9 +319,9 @@ cpmCPUTotal5secRev OBJECT-TYPE STATUS deprecated DESCRIPTION "The overall CPU busy percentage in the last 5 second - period. This object deprecates the object cpmCPUTotal5sec + period. This object deprecates the object cpmCPUTotal5sec and increases the value range to (0..100). This object - is deprecated by cpmCPUTotalMonIntervalValue" + is deprecated by cpmCPUTotalMonIntervalValue" ::= { cpmCPUTotalEntry 6 } cpmCPUTotal1minRev OBJECT-TYPE @@ -239,8 +331,8 @@ cpmCPUTotal1minRev OBJECT-TYPE STATUS current DESCRIPTION "The overall CPU busy percentage in the last 1 minute - period. This object deprecates the object cpmCPUTotal1min - and increases the value range to (0..100)." + period. This object deprecates the object cpmCPUTotal1min + and increases the value range to (0..100)." ::= { cpmCPUTotalEntry 7 } cpmCPUTotal5minRev OBJECT-TYPE @@ -250,8 +342,8 @@ cpmCPUTotal5minRev OBJECT-TYPE STATUS current DESCRIPTION "The overall CPU busy percentage in the last 5 minute - period. This object deprecates the object cpmCPUTotal5min - and increases the value range to (0..100)." + period. This object deprecates the object cpmCPUTotal5min + and increases the value range to (0..100)." ::= { cpmCPUTotalEntry 8 } cpmCPUMonInterval OBJECT-TYPE @@ -261,8 +353,8 @@ cpmCPUMonInterval OBJECT-TYPE STATUS current DESCRIPTION "CPU usage monitoring interval. The value of this - object in seconds indicates the how often the - CPU utilization is calculated and monitored." + object in seconds indicates the how often the + CPU utilization is calculated and monitored." ::= { cpmCPUTotalEntry 9 } cpmCPUTotalMonIntervalValue OBJECT-TYPE @@ -272,8 +364,8 @@ cpmCPUTotalMonIntervalValue OBJECT-TYPE STATUS current DESCRIPTION "The overall CPU busy percentage in the last - cpmCPUMonInterval period. - This object deprecates the object cpmCPUTotal5secRev." + cpmCPUMonInterval period. + This object deprecates the object cpmCPUTotal5secRev." ::= { cpmCPUTotalEntry 10 } cpmCPUInterruptMonIntervalValue OBJECT-TYPE @@ -284,7 +376,7 @@ cpmCPUInterruptMonIntervalValue OBJECT-TYPE DESCRIPTION "The overall CPU busy percentage in the interrupt context in the last cpmCPUMonInterval - period." + period." ::= { cpmCPUTotalEntry 11 } cpmCPUMemoryUsed OBJECT-TYPE @@ -294,7 +386,7 @@ cpmCPUMemoryUsed OBJECT-TYPE STATUS current DESCRIPTION "The overall CPU wide system memory which is currently - under use." + under use." ::= { cpmCPUTotalEntry 12 } cpmCPUMemoryFree OBJECT-TYPE @@ -304,7 +396,7 @@ cpmCPUMemoryFree OBJECT-TYPE STATUS current DESCRIPTION "The overall CPU wide system memory which is currently - free." + free." ::= { cpmCPUTotalEntry 13 } cpmCPUMemoryKernelReserved OBJECT-TYPE @@ -314,7 +406,7 @@ cpmCPUMemoryKernelReserved OBJECT-TYPE STATUS current DESCRIPTION "The overall CPU wide system memory which is reserved - for kernel usage." + for kernel usage." ::= { cpmCPUTotalEntry 14 } cpmCPUMemoryLowest OBJECT-TYPE @@ -324,14 +416,278 @@ cpmCPUMemoryLowest OBJECT-TYPE STATUS current DESCRIPTION "The lowest free memory that has been recorded since - device has booted." + device has booted." ::= { cpmCPUTotalEntry 15 } - + +cpmCPUMemoryUsedOvrflw OBJECT-TYPE + SYNTAX Gauge32 + UNITS "kilo-bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object represents the upper 32-bit of cpmCPUMemoryUsed. + This object needs to be supported only when the value of + cpmCPUMemoryUsed exceeds 32-bit, otherwise this object value + would be set to 0." + ::= { cpmCPUTotalEntry 16 } + +cpmCPUMemoryHCUsed OBJECT-TYPE + SYNTAX CounterBasedGauge64 + UNITS "kilo-bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The overall CPU wide system memory which is currently under + use. This object is a 64-bit version of cpmCPUMemoryUsed." + ::= { cpmCPUTotalEntry 17 } + +cpmCPUMemoryFreeOvrflw OBJECT-TYPE + SYNTAX Gauge32 + UNITS "kilo-bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object represents the upper 32-bit of cpmCPUMemoryFree. + This object needs to be supported only when the value of + cpmCPUMemoryFree exceeds 32-bit, otherwise this object value + would be set to 0." + ::= { cpmCPUTotalEntry 18 } + +cpmCPUMemoryHCFree OBJECT-TYPE + SYNTAX Counter64 + UNITS "kilo-bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The overall CPU wide system memory which is currently free. + This object is a 64-bit version of cpmCPUMemoryFree." + ::= { cpmCPUTotalEntry 19 } + +cpmCPUMemoryKernelReservedOvrflw OBJECT-TYPE + SYNTAX Gauge32 + UNITS "kilo-bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object represents the upper 32-bit of + cpmCPUMemoryKernelReserved. This object needs + to be supported only when the value of + cpmCPUMemoryKernelReserved exceeds 32-bit, otherwise + this object value would be set to 0." + ::= { cpmCPUTotalEntry 20 } + +cpmCPUMemoryHCKernelReserved OBJECT-TYPE + SYNTAX CounterBasedGauge64 + UNITS "kilo-bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The overall CPU wide system memory which is reserved + for kernel usage. This object is a 64-bit version of + cpmCPUMemoryKernelReserved." + ::= { cpmCPUTotalEntry 21 } + +cpmCPUMemoryLowestOvrflw OBJECT-TYPE + SYNTAX Gauge32 + UNITS "kilo-bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object represents the upper 32-bit of cpmCPUMemoryLowest. + This object needs to be supported only when the value of + cpmCPUMemoryLowest exceeds 32-bit, otherwise this object value + would be set to 0." + ::= { cpmCPUTotalEntry 22 } + +cpmCPUMemoryHCLowest OBJECT-TYPE + SYNTAX CounterBasedGauge64 + UNITS "kilo-bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The lowest free memory that has been recorded since device has + booted. This object is a 64-bit version of cpmCPUMemoryLowest." + ::= { cpmCPUTotalEntry 23 } + +cpmCPULoadAvg1min OBJECT-TYPE + SYNTAX CPULoadAverage + UNITS "hundredths of processes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The overall CPU load Average in the last 1 minute period" + ::= { cpmCPUTotalEntry 24 } + +cpmCPULoadAvg5min OBJECT-TYPE + SYNTAX CPULoadAverage + UNITS "hundredths of processes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The overall CPU load Average in the last 5 minutes period" + ::= { cpmCPUTotalEntry 25 } + +cpmCPULoadAvg15min OBJECT-TYPE + SYNTAX CPULoadAverage + UNITS "hundredths of processes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The overall CPU load Average in the last 15 minutes period" + ::= { cpmCPUTotalEntry 26 } + +cpmCPUMemoryCommitted OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The overall CPU wide system memory which is currently + Committed." + ::= { cpmCPUTotalEntry 27 } + +cpmCPUMemoryCommittedOvrflw OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object represents the upper 32-bit of + cpmCPUMemoryCommitted. + This object needs to be supported only when the value of + cpmCPUMemoryCommitted exceeds 32-bit, otherwise this object + value would be set to 0." + ::= { cpmCPUTotalEntry 28 } + +cpmCPUMemoryHCCommitted OBJECT-TYPE + SYNTAX CounterBasedGauge64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The overall CPU wide system memory which is currently + committed. This object is a 64-bit version of + cpmCPUMemoryCommitted" + ::= { cpmCPUTotalEntry 29 } + + +-- Cisco Core Table + +cpmCoreTable OBJECT-TYPE + SYNTAX SEQUENCE OF CpmCoreEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table of per-Core statistics." + ::= { cpmCPU 2 } + +cpmCoreEntry OBJECT-TYPE + SYNTAX CpmCoreEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Overall information about the Core load. Entries in this + table could come and go as Cores go online or offline." + INDEX { + cpmCPUTotalIndex, + cpmCoreIndex + } + ::= { cpmCoreTable 1 } + +CpmCoreEntry ::= SEQUENCE { + cpmCoreIndex Unsigned32, + cpmCorePhysicalIndex EntPhysicalIndexOrZero, + cpmCore5sec Gauge32, + cpmCore1min Gauge32, + cpmCore5min Gauge32, + cpmCoreLoadAvg1min CPULoadAverage, + cpmCoreLoadAvg5min CPULoadAverage, + cpmCoreLoadAvg15min CPULoadAverage +} + +cpmCoreIndex OBJECT-TYPE + SYNTAX Unsigned32 (1..4294967295) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An index that uniquely represents a Core (or group of Cores) + whose Core load information is reported by a row in this table. + This index is assigned arbitrarily by the engine + and is not saved over reboots." + ::= { cpmCoreEntry 1 } + +cpmCorePhysicalIndex OBJECT-TYPE + SYNTAX EntPhysicalIndexOrZero + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The entCorePhysicalIndex of the physical entity for which + the Core statistics in this entry are maintained. + The physical entity can be a CPU chip, a group of CPUs, + a CPU card etc. The exact type of this entity is described by + its entPhysicalVendorType value. If the Core statistics + in this entry correspond to more than one physical entity + (or to no physical entity), or if the entPhysicalTable is + not supported on the SNMP agent, the value of this object + must be zero." + ::= { cpmCoreEntry 2 } + +cpmCore5sec OBJECT-TYPE + SYNTAX Gauge32 (0..100) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The overall Core busy percentage in the last 5 second + period." + ::= { cpmCoreEntry 3 } + +cpmCore1min OBJECT-TYPE + SYNTAX Gauge32 (0..100) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The overall Core busy percentage in the last 1 minute + period." + ::= { cpmCoreEntry 4 } + +cpmCore5min OBJECT-TYPE + SYNTAX Gauge32 (0..100) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The overall Core busy percentage in the last 5 minute + period." + ::= { cpmCoreEntry 5 } + +cpmCoreLoadAvg1min OBJECT-TYPE + SYNTAX CPULoadAverage + UNITS "hundredths of processes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The overall Core load Average in the last 1 minute period" + ::= { cpmCoreEntry 6 } + +cpmCoreLoadAvg5min OBJECT-TYPE + SYNTAX CPULoadAverage + UNITS "hundredths of processes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The overall Core load Average in the last 5 minutes period" + ::= { cpmCoreEntry 7 } + +cpmCoreLoadAvg15min OBJECT-TYPE + SYNTAX CPULoadAverage + UNITS "hundredths of processes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The overall Core load Average in the last 15 minutes period" + ::= { cpmCoreEntry 8 } + -- Cisco Processes Common Table cpmProcessTable OBJECT-TYPE - SYNTAX SEQUENCE OF CpmProcessEntry + SYNTAX SEQUENCE OF CpmProcessEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION @@ -345,12 +701,12 @@ cpmProcessEntry OBJECT-TYPE STATUS current DESCRIPTION "Generic information about an active process on this - device. Entries in this table come and go as processes are + device. Entries in this table come and go as processes are created and destroyed by the device." INDEX { cpmCPUTotalIndex, cpmProcessPID - } + } ::= { cpmProcessTable 1 } CpmProcessEntry ::= SEQUENCE { @@ -369,7 +725,7 @@ cpmProcessPID OBJECT-TYPE "This object contains the process ID. cpmTimeCreated should be checked against the last time it was polled, and if it has changed the PID has been reused and the - entire entry should be polled again." + entire entry should be polled again." ::= { cpmProcessEntry 1 } cpmProcessName OBJECT-TYPE @@ -380,7 +736,7 @@ cpmProcessName OBJECT-TYPE "The name associated with this process. If the name is longer than 32 characters, it will be truncated to the first 31 characters, and a `*' will be appended as the last - character to imply this is a truncated process name." + character to imply this is a truncated process name." ::= { cpmProcessEntry 2 } cpmProcessuSecs OBJECT-TYPE @@ -391,7 +747,7 @@ cpmProcessuSecs OBJECT-TYPE DESCRIPTION "Average elapsed CPU time in microseconds when the process was active. This object is deprecated - by cpmProcessAverageUSecs." + by cpmProcessAverageUSecs." ::= { cpmProcessEntry 4 } cpmProcessTimeCreated OBJECT-TYPE @@ -400,8 +756,8 @@ cpmProcessTimeCreated OBJECT-TYPE STATUS current DESCRIPTION "The time when the process was created. The process ID - and the time when the process was created, uniquely - identifies a process." + and the time when the process was created, uniquely + identifies a process." ::= { cpmProcessEntry 5 } cpmProcessAverageUSecs OBJECT-TYPE @@ -412,15 +768,15 @@ cpmProcessAverageUSecs OBJECT-TYPE DESCRIPTION "Average elapsed CPU time in microseconds when the process was active. This object deprecates the - object cpmProcessuSecs." + object cpmProcessuSecs." ::= { cpmProcessEntry 6 } - + -- Cisco processes detail Table. This table is mandatory on systems -- that have the internal capability to keep the information. cpmProcessExtTable OBJECT-TYPE - SYNTAX SEQUENCE OF CpmProcessExtEntry + SYNTAX SEQUENCE OF CpmProcessExtEntry MAX-ACCESS not-accessible STATUS deprecated DESCRIPTION @@ -439,8 +795,7 @@ cpmProcessExtEntry OBJECT-TYPE "An entry containing additional information for a particular process. This object is deprecated by cpmProcessExtRevEntry." - AUGMENTS { cpmProcessEntry } - + AUGMENTS { cpmProcessEntry } ::= { cpmProcessExtTable 1 } CpmProcessExtEntry ::= SEQUENCE { @@ -464,7 +819,7 @@ cpmProcExtMemAllocated OBJECT-TYPE this process has received from the system. This includes memory that may have been returned. The sum of freed memory is provided by cpmProcExtMemFreed. This object - is deprecated by cpmProcExtMemAllocatedRev." + is deprecated by cpmProcExtMemAllocatedRev." ::= { cpmProcessExtEntry 1 } cpmProcExtMemFreed OBJECT-TYPE @@ -474,8 +829,8 @@ cpmProcExtMemFreed OBJECT-TYPE STATUS deprecated DESCRIPTION "The sum of all memory that this process has returned - to the system. This object is deprecated by - cpmProcExtMemFreedRev." + to the system. This object is deprecated by + cpmProcExtMemFreedRev." ::= { cpmProcessExtEntry 2 } cpmProcExtInvoked OBJECT-TYPE @@ -485,7 +840,7 @@ cpmProcExtInvoked OBJECT-TYPE DESCRIPTION "The number of times since cpmTimeCreated that the process has been invoked. This object is - deprecated by cpmProcExtInvokedRev." + deprecated by cpmProcExtInvokedRev." ::= { cpmProcessExtEntry 3 } cpmProcExtRuntime OBJECT-TYPE @@ -496,7 +851,7 @@ cpmProcExtRuntime OBJECT-TYPE DESCRIPTION "The amount of CPU time the process has used, in microseconds. This object is deprecated by - cpmProcExtRuntimeRev." + cpmProcExtRuntimeRev." ::= { cpmProcessExtEntry 4 } cpmProcExtUtil5Sec OBJECT-TYPE @@ -505,13 +860,13 @@ cpmProcExtUtil5Sec OBJECT-TYPE STATUS deprecated DESCRIPTION "This object provides a general idea of how busy - a process caused the processor to be over a 5 - second period. It is determined as a weighted - decaying average of the current idle time over - the longest idle time. Note that this information - should be used as an estimate only. This object is - deprecated by cpmProcExtUtil5SecRev which has the - changed range of value (0..100)." + a process caused the processor to be over a 5 + second period. It is determined as a weighted + decaying average of the current idle time over + the longest idle time. Note that this information + should be used as an estimate only. This object is + deprecated by cpmProcExtUtil5SecRev which has the + changed range of value (0..100)." ::= { cpmProcessExtEntry 5 } cpmProcExtUtil1Min OBJECT-TYPE @@ -520,13 +875,13 @@ cpmProcExtUtil1Min OBJECT-TYPE STATUS deprecated DESCRIPTION "This object provides a general idea of how busy - a process caused the processor to be over a 1 - minute period. It is determined as a weighted - decaying average of the current idle time over the - longest idle time. Note that this information - should be used as an estimate only. This object is + a process caused the processor to be over a 1 + minute period. It is determined as a weighted + decaying average of the current idle time over the + longest idle time. Note that this information + should be used as an estimate only. This object is deprecated by cpmProcExtUtil1MinRev which has - the changed range of value (0..100)." + the changed range of value (0..100)." ::= { cpmProcessExtEntry 6 } cpmProcExtUtil5Min OBJECT-TYPE @@ -535,13 +890,13 @@ cpmProcExtUtil5Min OBJECT-TYPE STATUS deprecated DESCRIPTION "This object provides a general idea of how busy - a process caused the processor to be over a 5 - minute period. It is determined as a weighted - decaying average of the current idle time over - the longest idle time. Note that this information + a process caused the processor to be over a 5 + minute period. It is determined as a weighted + decaying average of the current idle time over + the longest idle time. Note that this information should be used as an estimate only. This object is deprecated by cpmProcExtUtil5MinRev which - has the changed range of value (0..100)." + has the changed range of value (0..100)." ::= { cpmProcessExtEntry 7 } cpmProcExtPriority OBJECT-TYPE @@ -557,20 +912,20 @@ cpmProcExtPriority OBJECT-TYPE DESCRIPTION "The priority level at which the process is running. This object is deprecated by - cpmProcExtPriorityRev." + cpmProcExtPriorityRev." ::= { cpmProcessExtEntry 8 } - + cpmProcessExtRevTable OBJECT-TYPE - SYNTAX SEQUENCE OF CpmProcessExtRevEntry + SYNTAX SEQUENCE OF CpmProcessExtRevEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains information that may or may not be available on all cisco devices. It contains additional objects for the more general - cpmProcessTable. This object deprecates + cpmProcessTable. This object deprecates cpmProcessExtTable." ::= { cpmProcess 3 } @@ -580,33 +935,45 @@ cpmProcessExtRevEntry OBJECT-TYPE STATUS current DESCRIPTION "An entry containing additional information for - a particular process. This object deprecates + a particular process. This object deprecates cpmProcessExtEntry." INDEX { cpmCPUTotalIndex, cpmProcessPID - } + } ::= { cpmProcessExtRevTable 1 } CpmProcessExtRevEntry ::= SEQUENCE { - cpmProcExtMemAllocatedRev Gauge32, - cpmProcExtMemFreedRev Gauge32, - cpmProcExtInvokedRev Counter32, - cpmProcExtRuntimeRev Counter32, - cpmProcExtUtil5SecRev Gauge32, - cpmProcExtUtil1MinRev Gauge32, - cpmProcExtUtil5MinRev Gauge32, - cpmProcExtPriorityRev INTEGER, - cpmProcessType INTEGER, - cpmProcessRespawn TruthValue, - cpmProcessRespawnCount Counter32, - cpmProcessRespawnAfterLastPatch Counter32, - cpmProcessMemoryCore INTEGER, - cpmProcessLastRestartUser SnmpAdminString, - cpmProcessTextSegmentSize Unsigned32, - cpmProcessDataSegmentSize Gauge32, - cpmProcessStackSize Gauge32, - cpmProcessDynamicMemorySize Gauge32 + cpmProcExtMemAllocatedRev Gauge32, + cpmProcExtMemFreedRev Gauge32, + cpmProcExtInvokedRev Counter32, + cpmProcExtRuntimeRev Counter32, + cpmProcExtUtil5SecRev Gauge32, + cpmProcExtUtil1MinRev Gauge32, + cpmProcExtUtil5MinRev Gauge32, + cpmProcExtPriorityRev INTEGER, + cpmProcessType INTEGER, + cpmProcessRespawn TruthValue, + cpmProcessRespawnCount Counter32, + cpmProcessRespawnAfterLastPatch Counter32, + cpmProcessMemoryCore INTEGER, + cpmProcessLastRestartUser SnmpAdminString, + cpmProcessTextSegmentSize Unsigned32, + cpmProcessDataSegmentSize Gauge32, + cpmProcessStackSize Gauge32, + cpmProcessDynamicMemorySize Gauge32, + cpmProcExtMemAllocatedRevOvrflw Gauge32, + cpmProcExtHCMemAllocatedRev CounterBasedGauge64, + cpmProcExtMemFreedRevOvrflw Gauge32, + cpmProcExtHCMemFreedRev CounterBasedGauge64, + cpmProcessTextSegmentSizeOvrflw Unsigned32, + cpmProcessHCTextSegmentSize Unsigned64, + cpmProcessDataSegmentSizeOvrflw Gauge32, + cpmProcessHCDataSegmentSize CounterBasedGauge64, + cpmProcessStackSizeOvrflw Gauge32, + cpmProcessHCStackSize CounterBasedGauge64, + cpmProcessDynamicMemorySizeOvrflw Gauge32, + cpmProcessHCDynamicMemorySize CounterBasedGauge64 } cpmProcExtMemAllocatedRev OBJECT-TYPE @@ -619,7 +986,7 @@ cpmProcExtMemAllocatedRev OBJECT-TYPE this process has received from the system. This includes memory that may have been returned. The sum of freed memory is provided by cpmProcExtMemFreedRev. This object - deprecates cpmProcExtMemAllocated." + deprecates cpmProcExtMemAllocated." ::= { cpmProcessExtRevEntry 1 } cpmProcExtMemFreedRev OBJECT-TYPE @@ -629,8 +996,8 @@ cpmProcExtMemFreedRev OBJECT-TYPE STATUS current DESCRIPTION "The sum of all memory that this process has returned - to the system. This object deprecates - cpmProcExtMemFreed." + to the system. This object deprecates + cpmProcExtMemFreed." ::= { cpmProcessExtRevEntry 2 } cpmProcExtInvokedRev OBJECT-TYPE @@ -639,8 +1006,8 @@ cpmProcExtInvokedRev OBJECT-TYPE STATUS current DESCRIPTION "The number of times since cpmTimeCreated that - the process has been invoked. This object - deprecates cpmProcExtInvoked." + the process has been invoked. This object + deprecates cpmProcExtInvoked." ::= { cpmProcessExtRevEntry 3 } cpmProcExtRuntimeRev OBJECT-TYPE @@ -651,7 +1018,7 @@ cpmProcExtRuntimeRev OBJECT-TYPE DESCRIPTION "The amount of CPU time the process has used, in microseconds. This object deprecates - cpmProcExtRuntime." + cpmProcExtRuntime." ::= { cpmProcessExtRevEntry 4 } cpmProcExtUtil5SecRev OBJECT-TYPE @@ -661,13 +1028,13 @@ cpmProcExtUtil5SecRev OBJECT-TYPE STATUS current DESCRIPTION "This object provides a general idea of how busy - a process caused the processor to be over a 5 - second period. It is determined as a weighted - decaying average of the current idle time over - the longest idle time. Note that this information + a process caused the processor to be over a 5 + second period. It is determined as a weighted + decaying average of the current idle time over + the longest idle time. Note that this information should be used as an estimate only. This object - deprecates cpmProcExtUtil5Sec and increases the - value range to (0..100)." + deprecates cpmProcExtUtil5Sec and increases the + value range to (0..100)." ::= { cpmProcessExtRevEntry 5 } cpmProcExtUtil1MinRev OBJECT-TYPE @@ -677,13 +1044,13 @@ cpmProcExtUtil1MinRev OBJECT-TYPE STATUS current DESCRIPTION "This object provides a general idea of how busy - a process caused the processor to be over a 1 - minute period. It is determined as a weighted - decaying average of the current idle time over the - longest idle time. Note that this information - should be used as an estimate only. This object + a process caused the processor to be over a 1 + minute period. It is determined as a weighted + decaying average of the current idle time over the + longest idle time. Note that this information + should be used as an estimate only. This object deprecates cpmProcExtUtil1Min and increases the value - range to (0..100)." + range to (0..100)." ::= { cpmProcessExtRevEntry 6 } cpmProcExtUtil5MinRev OBJECT-TYPE @@ -693,13 +1060,13 @@ cpmProcExtUtil5MinRev OBJECT-TYPE STATUS current DESCRIPTION "This object provides a general idea of how busy - a process caused the processor to be over a 5 - minute period. It is determined as a weighted - decaying average of the current idle time over - the longest idle time. Note that this information + a process caused the processor to be over a 5 + minute period. It is determined as a weighted + decaying average of the current idle time over + the longest idle time. Note that this information should be used as an estimate only. This object deprecates cpmProcExtUtil5Min and increases the - value range to (0..100)." + value range to (0..100)." ::= { cpmProcessExtRevEntry 7 } cpmProcExtPriorityRev OBJECT-TYPE @@ -714,8 +1081,8 @@ cpmProcExtPriorityRev OBJECT-TYPE STATUS current DESCRIPTION "The priority level at which the process is - running. This object deprecates - cpmProcExtPriority." + running. This object deprecates + cpmProcExtPriority." ::= { cpmProcessExtRevEntry 8 } cpmProcessType OBJECT-TYPE @@ -727,7 +1094,7 @@ cpmProcessType OBJECT-TYPE MAX-ACCESS read-only STATUS current DESCRIPTION - "This indicates the kind of process in context." + "This indicates the kind of process in context." ::= { cpmProcessExtRevEntry 9 } cpmProcessRespawn OBJECT-TYPE @@ -737,7 +1104,7 @@ cpmProcessRespawn OBJECT-TYPE DESCRIPTION "This indicates whether respawn of a process is enabled or not. If enabled the process in context repawns after - it has crashed/stopped." + it has crashed/stopped." ::= { cpmProcessExtRevEntry 10 } cpmProcessRespawnCount OBJECT-TYPE @@ -746,7 +1113,7 @@ cpmProcessRespawnCount OBJECT-TYPE STATUS current DESCRIPTION "This indicates the number of times the process has - respawned/restarted." + respawned/restarted." ::= { cpmProcessExtRevEntry 11 } cpmProcessRespawnAfterLastPatch OBJECT-TYPE @@ -755,8 +1122,8 @@ cpmProcessRespawnAfterLastPatch OBJECT-TYPE STATUS current DESCRIPTION "This indicates the number of times a process has - restarted after the last patch is applied. This is to - determine the stability of the last patch." + restarted after the last patch is applied. This is to + determine the stability of the last patch." ::= { cpmProcessExtRevEntry 12 } cpmProcessMemoryCore OBJECT-TYPE @@ -774,14 +1141,14 @@ cpmProcessMemoryCore OBJECT-TYPE STATUS current DESCRIPTION "This indicates the part of process memory to be - dumped when a process crashes. The process - memory is used for debugging purposes to trace the + dumped when a process crashes. The process + memory is used for debugging purposes to trace the root cause of the crash. sparse - Some operating systems support minimal dump of process core like register info, partial stack, partial memory pages especially for critical process - to facilitate faster process restart." + to facilitate faster process restart." ::= { cpmProcessExtRevEntry 13 } cpmProcessLastRestartUser OBJECT-TYPE @@ -790,7 +1157,7 @@ cpmProcessLastRestartUser OBJECT-TYPE STATUS current DESCRIPTION "This indicate the user that has last restarted the - process or has taken running coredump of the process." + process or has taken running coredump of the process." ::= { cpmProcessExtRevEntry 14 } cpmProcessTextSegmentSize OBJECT-TYPE @@ -800,7 +1167,7 @@ cpmProcessTextSegmentSize OBJECT-TYPE STATUS current DESCRIPTION "This indicates the text memory of a process and all - its shared objects." + its shared objects." ::= { cpmProcessExtRevEntry 15 } cpmProcessDataSegmentSize OBJECT-TYPE @@ -810,7 +1177,7 @@ cpmProcessDataSegmentSize OBJECT-TYPE STATUS current DESCRIPTION "This indicates the data segment of a process and - all its shared objects." + all its shared objects." ::= { cpmProcessExtRevEntry 16 } cpmProcessStackSize OBJECT-TYPE @@ -820,7 +1187,7 @@ cpmProcessStackSize OBJECT-TYPE STATUS current DESCRIPTION "This indicates the amount of stack memory used by the - process." + process." ::= { cpmProcessExtRevEntry 17 } cpmProcessDynamicMemorySize OBJECT-TYPE @@ -830,16 +1197,159 @@ cpmProcessDynamicMemorySize OBJECT-TYPE STATUS current DESCRIPTION "This indicates the amount of dynamic memory being used - by the process." + by the process." ::= { cpmProcessExtRevEntry 18 } - + +cpmProcExtMemAllocatedRevOvrflw OBJECT-TYPE + SYNTAX Gauge32 + UNITS "bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object represents the upper 32-bit of + cpmProcExtMemAllocatedRev. This object needs + to be supported only when the value of + cpmProcExtMemAllocatedRev exceeds 32-bit, + otherwise this object value would be set to 0." + ::= { cpmProcessExtRevEntry 19 } + +cpmProcExtHCMemAllocatedRev OBJECT-TYPE + SYNTAX CounterBasedGauge64 + UNITS "bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sum of all the dynamically allocated memory that this + process has received from the system. This includes memory + that may have been returned. This object is a 64-bit version + of cpmProcExtMemAllocatedRev." + ::= { cpmProcessExtRevEntry 20 } + +cpmProcExtMemFreedRevOvrflw OBJECT-TYPE + SYNTAX Gauge32 + UNITS "bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object represents the upper 32-bit of + cpmProcExtMemFreedRev. This object needs to + be supported only when the value of + cpmProcExtMemFreedRev exceeds 32-bit,otherwise + this object value would be set to 0." + ::= { cpmProcessExtRevEntry 21 } + +cpmProcExtHCMemFreedRev OBJECT-TYPE + SYNTAX CounterBasedGauge64 + UNITS "bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The sum of all memory that this process has returned to the + system. This object is a 64-bit version of + cpmProcExtMemFreedRev." + ::= { cpmProcessExtRevEntry 22 } + +cpmProcessTextSegmentSizeOvrflw OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "kilo-bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object represents the upper 32-bit of + cpmProcessTextSegmentSize. This object needs + to be supported only when the value of + cpmProcessTextSegmentSize exceeds 32-bit, + otherwise this object value would be set to 0." + ::= { cpmProcessExtRevEntry 23 } + +cpmProcessHCTextSegmentSize OBJECT-TYPE + SYNTAX Unsigned64 + UNITS "kilo-bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This indicates the text memory of a process and all + its shared objects. This object is a 64-bit version + of cpmProcessTextSegmentSize." + ::= { cpmProcessExtRevEntry 24 } + +cpmProcessDataSegmentSizeOvrflw OBJECT-TYPE + SYNTAX Gauge32 + UNITS "kilo-bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object represents the upper 32-bit of + cpmProcessDataSegmentSize. This object needs + to be supported only when the value of + cpmProcessDataSegmentSize exceeds 32-bit, + otherwise this object value would be set to 0." + ::= { cpmProcessExtRevEntry 25 } + +cpmProcessHCDataSegmentSize OBJECT-TYPE + SYNTAX CounterBasedGauge64 + UNITS "kilo-bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This indicates the data segment of a process and + all its shared objects.. This object is a 64-bit + version of cpmProcessDataSegmentSize." + ::= { cpmProcessExtRevEntry 26 } + +cpmProcessStackSizeOvrflw OBJECT-TYPE + SYNTAX Gauge32 + UNITS "kilo-bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object represents the upper 32-bit of cpmProcessStackSize. + This object needs to be supported only when the value of + cpmProcessStackSize exceeds 32-bit, otherwise this object value + would be set to 0." + ::= { cpmProcessExtRevEntry 27 } + +cpmProcessHCStackSize OBJECT-TYPE + SYNTAX CounterBasedGauge64 + UNITS "kilo-bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This indicates the amount of stack memory used by the process. + This object is a 64-bit version of cpmProcessStackSize." + ::= { cpmProcessExtRevEntry 28 } + +cpmProcessDynamicMemorySizeOvrflw OBJECT-TYPE + SYNTAX Gauge32 + UNITS "kilo-bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object represents the upper 32-bit of + cpmProcessDynamicMemorySize. This object needs + to be supported only when the value of + cpmProcessDynamicMemorySize exceeds 32-bit, + otherwise this object value would be set to 0." + ::= { cpmProcessExtRevEntry 29 } + +cpmProcessHCDynamicMemorySize OBJECT-TYPE + SYNTAX CounterBasedGauge64 + UNITS "kilo-bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This indicates the amount of dynamic memory being used + by the process. This object is a 64-bit version of + cpmProcessDynamicMemorySize." + ::= { cpmProcessExtRevEntry 30 } + -- Threshold Table allows the CPU threshold configurations. -- When the configured threshold is reached a NMS will be notified -- with this event. cpmCPUThresholdTable OBJECT-TYPE - SYNTAX SEQUENCE OF CpmCPUThresholdEntry + SYNTAX SEQUENCE OF CpmCPUThresholdEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION @@ -859,7 +1369,7 @@ cpmCPUThresholdEntry OBJECT-TYPE INDEX { cpmCPUTotalIndex, cpmCPUThresholdClass - } + } ::= { cpmCPUThresholdTable 1 } CpmCPUThresholdEntry ::= SEQUENCE { @@ -885,7 +1395,7 @@ cpmCPUThresholdClass OBJECT-TYPE the total CPU utilization, interrupt(2) indicates the the CPU utilization in interrupt context and process(3) indicates the CPU utilization in the process level - execution context." + execution context." ::= { cpmCPUThresholdEntry 1 } cpmCPURisingThresholdValue OBJECT-TYPE @@ -894,11 +1404,11 @@ cpmCPURisingThresholdValue OBJECT-TYPE STATUS current DESCRIPTION "The percentage rising threshold value configured by - the user. The value indicates, + the user. The value indicates, if the percentage CPU utilization is equal to or above - this value for cpmCPURisingThresholdPeriod duration + this value for cpmCPURisingThresholdPeriod duration then send a cpmCPURisingThreshold notification to - the NMS." + the NMS." ::= { cpmCPUThresholdEntry 2 } cpmCPURisingThresholdPeriod OBJECT-TYPE @@ -908,11 +1418,11 @@ cpmCPURisingThresholdPeriod OBJECT-TYPE STATUS current DESCRIPTION "This is an observation interval. - The value of this object indicates that + The value of this object indicates that the CPU utilization should be above - cpmCPURisingThresholdValue for this duration to send a + cpmCPURisingThresholdValue for this duration to send a cpmCPURisingThreshold notification to the NMS." - DEFVAL { 5 } + DEFVAL { 5 } ::= { cpmCPUThresholdEntry 3 } cpmCPUFallingThresholdValue OBJECT-TYPE @@ -921,11 +1431,11 @@ cpmCPUFallingThresholdValue OBJECT-TYPE STATUS current DESCRIPTION "The percentage falling threshold value configured by - the user. The value indicates, if the percentage - CPU utilization is equal to or below this value for + the user. The value indicates, if the percentage + CPU utilization is equal to or below this value for cpmCPUFallingThresholdPeriod duration - then send a cpmCPUFallingThreshold notification - to the NMS." + then send a cpmCPUFallingThreshold notification + to the NMS." ::= { cpmCPUThresholdEntry 4 } cpmCPUFallingThresholdPeriod OBJECT-TYPE @@ -936,9 +1446,9 @@ cpmCPUFallingThresholdPeriod OBJECT-TYPE DESCRIPTION "This is an observation interval. The value of this object indicates that CPU utilization should be below - cpmCPUFallingThresholdValue for this duration to send a + cpmCPUFallingThresholdValue for this duration to send a cpmCPURisingThreshold notification to the NMS." - DEFVAL { 5 } + DEFVAL { 5 } ::= { cpmCPUThresholdEntry 5 } cpmCPUThresholdEntryStatus OBJECT-TYPE @@ -946,9 +1456,9 @@ cpmCPUThresholdEntryStatus OBJECT-TYPE MAX-ACCESS read-create STATUS current DESCRIPTION - "The status of this table entry." + "The status of this table entry." ::= { cpmCPUThresholdEntry 6 } - + cpmCPUHistoryThreshold OBJECT-TYPE @@ -958,9 +1468,9 @@ cpmCPUHistoryThreshold OBJECT-TYPE DESCRIPTION "The user configured value of this object gives the minimum percent CPU utilization of a process - in the last cpmCPUMonInterval duration required to be a + in the last cpmCPUMonInterval duration required to be a member of history table. When this object is changed - the new value will have effect in the next interval." + the new value will have effect in the next interval." ::= { cpmCPUHistory 1 } cpmCPUHistorySize OBJECT-TYPE @@ -969,18 +1479,18 @@ cpmCPUHistorySize OBJECT-TYPE STATUS current DESCRIPTION "A value configured by the user which specifies the - number of reports in the history table. + number of reports in the history table. A report contains set of processes which crossed - the cpmCPUHistoryThreshold - in the last cpmCPUMonInterval along with + the cpmCPUHistoryThreshold + in the last cpmCPUMonInterval along with the time at which this report is - created, total and interrupt CPU utilizations. + created, total and interrupt CPU utilizations. When this object is changed - the new value will have effect in the next interval." + the new value will have effect in the next interval." ::= { cpmCPUHistory 2 } cpmCPUHistoryTable OBJECT-TYPE - SYNTAX SEQUENCE OF CpmCPUHistoryEntry + SYNTAX SEQUENCE OF CpmCPUHistoryEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION @@ -994,13 +1504,13 @@ cpmCPUHistoryEntry OBJECT-TYPE DESCRIPTION "A historical sample of CPU utilization statistics. cpmCPUTotalIndex identifies the CPU (or group of CPUs) - for which this history is collected. + for which this history is collected. When the cpmCPUHistorySize is reached the least recent entry is lost." INDEX { cpmCPUTotalIndex, cpmCPUHistoryReportId - } + } ::= { cpmCPUHistoryTable 1 } CpmCPUHistoryEntry ::= SEQUENCE { @@ -1020,10 +1530,10 @@ cpmCPUHistoryReportId OBJECT-TYPE will have same value for this object. When the configured threshold for being a part of History table is reached then the qualified processes become the - part of history table. The entries which became the + part of history table. The entries which became the part of history table at one instant will have the same value for this object. When this object - reaches the max index value then it will wrap around." + reaches the max index value then it will wrap around." ::= { cpmCPUHistoryEntry 1 } cpmCPUHistoryReportSize OBJECT-TYPE @@ -1032,8 +1542,8 @@ cpmCPUHistoryReportSize OBJECT-TYPE STATUS current DESCRIPTION "The number of process entries in a report. - This object gives information about how many processes - became a part of history table at one instant." + This object gives information about how many processes + became a part of history table at one instant." ::= { cpmCPUHistoryEntry 2 } cpmCPUHistoryTotalUtil OBJECT-TYPE @@ -1043,7 +1553,7 @@ cpmCPUHistoryTotalUtil OBJECT-TYPE STATUS current DESCRIPTION "Total percentage of CPU utilization - at cpmCPUHistoryCreated." + at cpmCPUHistoryCreated." ::= { cpmCPUHistoryEntry 3 } cpmCPUHistoryInterruptUtil OBJECT-TYPE @@ -1053,7 +1563,7 @@ cpmCPUHistoryInterruptUtil OBJECT-TYPE STATUS current DESCRIPTION "Percentage of CPU utilization in the interrupt context - at cpmCPUHistoryCreated." + at cpmCPUHistoryCreated." ::= { cpmCPUHistoryEntry 4 } cpmCPUHistoryCreatedTime OBJECT-TYPE @@ -1062,13 +1572,13 @@ cpmCPUHistoryCreatedTime OBJECT-TYPE STATUS current DESCRIPTION "Time stamp with respect to sysUpTime indicating - the time at which this report is created." + the time at which this report is created." ::= { cpmCPUHistoryEntry 5 } - + cpmThreadTable OBJECT-TYPE - SYNTAX SEQUENCE OF CpmThreadEntry + SYNTAX SEQUENCE OF CpmThreadEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION @@ -1087,7 +1597,7 @@ cpmThreadEntry OBJECT-TYPE cpmCPUTotalIndex, cpmProcessPID, cpmThreadID - } + } ::= { cpmThreadTable 1 } CpmThreadEntry ::= SEQUENCE { @@ -1097,7 +1607,9 @@ CpmThreadEntry ::= SEQUENCE { cpmThreadState INTEGER, cpmThreadBlockingProcess RowPointer, cpmThreadCpuUtilization Gauge32, - cpmThreadStackSize Gauge32 + cpmThreadStackSize Gauge32, + cpmThreadStackSizeOvrflw Gauge32, + cpmThreadHCStackSize CounterBasedGauge64 } cpmThreadID OBJECT-TYPE @@ -1106,7 +1618,7 @@ cpmThreadID OBJECT-TYPE STATUS current DESCRIPTION "This object contains the thread ID. ThreadID is - Unique per process." + Unique per process." ::= { cpmThreadEntry 1 } cpmThreadName OBJECT-TYPE @@ -1115,8 +1627,8 @@ cpmThreadName OBJECT-TYPE STATUS current DESCRIPTION "This object represents the name of the thread. - Thread names need not be unique. Hence statistics - should be analyzed against thread ID." + Thread names need not be unique. Hence statistics + should be analyzed against thread ID." ::= { cpmThreadEntry 2 } cpmThreadPriority OBJECT-TYPE @@ -1125,8 +1637,8 @@ cpmThreadPriority OBJECT-TYPE STATUS current DESCRIPTION "This object indicates the priority of a POSIX thread. - The higher the number, the higher the priority of the - thread over other threads." + The higher the number, the higher the priority of the + thread over other threads." ::= { cpmThreadEntry 3 } cpmThreadState OBJECT-TYPE @@ -1154,36 +1666,36 @@ cpmThreadState OBJECT-TYPE STATUS current DESCRIPTION "This object indicates the current state of a thread. - Running state means that the thread is actively - consumig CPU. All the other states are just waiting + Running state means that the thread is actively + consumig CPU. All the other states are just waiting states. The valid states are: - other - Any other state apart from the listed + other - Any other state apart from the listed ones. - dead - Kernel is waiting to release the + dead - Kernel is waiting to release the thread's resources. running - Actively running on a CPU. - ready - Not running on a CPU, but is ready to - run (one or more higher or equal + ready - Not running on a CPU, but is ready to + run (one or more higher or equal priority threads are running). stopped - Suspended (SIGSTOP signal). - send - Waiting for a server to receive + send - Waiting for a server to receive a message. receive - Waiting for a client to send a message. - reply - Waiting for a server to reply to a + reply - Waiting for a server to reply to a message. stack - Waiting for more stack to be allocated. - waitpage - Waiting for process manager to + waitpage - Waiting for process manager to resolve a fault on a page. sigsuspend - Suspended for a signal. sigwaitinfo - Waiting for a signal. nanosleep - Sleeping for a period of time. mutex - Waiting to acquire a mutex - condvar - Waiting for a condition variable to be + condvar - Waiting for a condition variable to be signalled. - join - Waiting for the completion of another + join - Waiting for the completion of another thread. intr - Waiting for an interrupt. - sem - Waiting to acquire a semaphore." + sem - Waiting to acquire a semaphore." ::= { cpmThreadEntry 4 } cpmThreadBlockingProcess OBJECT-TYPE @@ -1192,11 +1704,11 @@ cpmThreadBlockingProcess OBJECT-TYPE STATUS current DESCRIPTION "This object identifies the process on which the - current thread is blocked on. This points to the - cpmProcessTable of the process on which the thread + current thread is blocked on. This points to the + cpmProcessTable of the process on which the thread in context is blocked. This is valid only to threads - which are either in send/reply states. For the - rest of the threads it is returned as 0.0" + which are either in send/reply states. For the + rest of the threads it is returned as 0.0" ::= { cpmThreadEntry 5 } cpmThreadCpuUtilization OBJECT-TYPE @@ -1206,7 +1718,7 @@ cpmThreadCpuUtilization OBJECT-TYPE STATUS current DESCRIPTION "This object provides a general idea on how busy - the thread in context caused the processor to be." + the thread in context caused the processor to be." ::= { cpmThreadEntry 6 } cpmThreadStackSize OBJECT-TYPE @@ -1216,13 +1728,36 @@ cpmThreadStackSize OBJECT-TYPE STATUS current DESCRIPTION "This object indicates the stack size allocated to - the thread in context." + the thread in context." ::= { cpmThreadEntry 7 } - + +cpmThreadStackSizeOvrflw OBJECT-TYPE + SYNTAX Gauge32 + UNITS "bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object represents the upper 32-bit of cpmThreadStackSize. + This object needs to be supported only when the value of + cpmThreadStackSize exceeds 32-bit, otherwise this object value + would be set to 0." + ::= { cpmThreadEntry 8 } + +cpmThreadHCStackSize OBJECT-TYPE + SYNTAX CounterBasedGauge64 + UNITS "bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object indicates the stack size allocated to the + thread in context. This object is a 64-bit version of + cpmThreadStackSize." + ::= { cpmThreadEntry 9 } + cpmVirtualProcessTable OBJECT-TYPE - SYNTAX SEQUENCE OF CpmVirtualProcessEntry + SYNTAX SEQUENCE OF CpmVirtualProcessEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION @@ -1241,19 +1776,23 @@ cpmVirtualProcessEntry OBJECT-TYPE cpmCPUTotalIndex, cpmProcessPID, cpmVirtualProcessID - } + } ::= { cpmVirtualProcessTable 1 } CpmVirtualProcessEntry ::= SEQUENCE { - cpmVirtualProcessID Unsigned32, - cpmVirtualProcessName SnmpAdminString, - cpmVirtualProcessUtil5Sec Gauge32, - cpmVirtualProcessUtil1Min Gauge32, - cpmVirtualProcessUtil5Min Gauge32, - cpmVirtualProcessMemAllocated Gauge32, - cpmVirtualProcessMemFreed Gauge32, - cpmVirtualProcessInvokeCount Counter32, - cpmVirtualProcessRuntime Counter32 + cpmVirtualProcessID Unsigned32, + cpmVirtualProcessName SnmpAdminString, + cpmVirtualProcessUtil5Sec Gauge32, + cpmVirtualProcessUtil1Min Gauge32, + cpmVirtualProcessUtil5Min Gauge32, + cpmVirtualProcessMemAllocated Gauge32, + cpmVirtualProcessMemFreed Gauge32, + cpmVirtualProcessInvokeCount Counter32, + cpmVirtualProcessRuntime Counter32, + cpmVirtualProcessMemAllocatedOvrflw Gauge32, + cpmVirtualProcessHCMemAllocated CounterBasedGauge64, + cpmVirtualProcessMemFreedOvrflw Gauge32, + cpmVirtualProcessHCMemFreed CounterBasedGauge64 } cpmVirtualProcessID OBJECT-TYPE @@ -1263,8 +1802,8 @@ cpmVirtualProcessID OBJECT-TYPE DESCRIPTION "This object indicates the process ID of a virtual process. PID is unique only inside one address space. - Virtual process PID should be considered along with - Parent process cpmProcessPID." + Virtual process PID should be considered along with + Parent process cpmProcessPID." ::= { cpmVirtualProcessEntry 1 } cpmVirtualProcessName OBJECT-TYPE @@ -1276,7 +1815,7 @@ cpmVirtualProcessName OBJECT-TYPE If the name is longer than 32 characters, it will be truncated to the first 31 characters, and a `*' will be appended as the last character to imply this is a - truncated process name." + truncated process name." ::= { cpmVirtualProcessEntry 2 } cpmVirtualProcessUtil5Sec OBJECT-TYPE @@ -1286,7 +1825,7 @@ cpmVirtualProcessUtil5Sec OBJECT-TYPE STATUS current DESCRIPTION "This indicates an estimated CPU utilization by - a virtual process over the last 5 seconds." + a virtual process over the last 5 seconds." ::= { cpmVirtualProcessEntry 3 } cpmVirtualProcessUtil1Min OBJECT-TYPE @@ -1296,7 +1835,7 @@ cpmVirtualProcessUtil1Min OBJECT-TYPE STATUS current DESCRIPTION "This indicates an estimated CPU utilization by - a virtual process over the last one minute." + a virtual process over the last one minute." ::= { cpmVirtualProcessEntry 4 } cpmVirtualProcessUtil5Min OBJECT-TYPE @@ -1306,7 +1845,7 @@ cpmVirtualProcessUtil5Min OBJECT-TYPE STATUS current DESCRIPTION "This indicates an estimated CPU utilization by - a virtual process over the last 5 minutes." + a virtual process over the last 5 minutes." ::= { cpmVirtualProcessEntry 5 } cpmVirtualProcessMemAllocated OBJECT-TYPE @@ -1316,8 +1855,8 @@ cpmVirtualProcessMemAllocated OBJECT-TYPE STATUS current DESCRIPTION "This object indicates the memory allocated by the - virtual process inside the address space of a - process running on Native OS." + virtual process inside the address space of a + process running on Native OS." ::= { cpmVirtualProcessEntry 6 } cpmVirtualProcessMemFreed OBJECT-TYPE @@ -1327,8 +1866,8 @@ cpmVirtualProcessMemFreed OBJECT-TYPE STATUS current DESCRIPTION "This object indicates the memory freed by the virtual - process inside the address space of a process running - on Native OS." + process inside the address space of a process running + on Native OS." ::= { cpmVirtualProcessEntry 7 } cpmVirtualProcessInvokeCount OBJECT-TYPE @@ -1336,7 +1875,7 @@ cpmVirtualProcessInvokeCount OBJECT-TYPE MAX-ACCESS read-only STATUS current DESCRIPTION - "The number of times a virtual process is invoked." + "The number of times a virtual process is invoked." ::= { cpmVirtualProcessEntry 8 } cpmVirtualProcessRuntime OBJECT-TYPE @@ -1346,9 +1885,58 @@ cpmVirtualProcessRuntime OBJECT-TYPE STATUS current DESCRIPTION "The amount of CPU time a virtual process has used in - microseconds." + microseconds." ::= { cpmVirtualProcessEntry 9 } - + +cpmVirtualProcessMemAllocatedOvrflw OBJECT-TYPE + SYNTAX Gauge32 + UNITS "bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object represents the upper 32-bit of + cpmVirtualProcessMemAllocated. This object + needs to be supported only when the value of + cpmVirtualProcessMemAllocated exceeds 32-bit, + otherwise this object value would be set to 0." + ::= { cpmVirtualProcessEntry 10 } + +cpmVirtualProcessHCMemAllocated OBJECT-TYPE + SYNTAX CounterBasedGauge64 + UNITS "bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object indicates the memory allocated by the + virtual process inside the address space of a process + running on Native OS. This object is a 64-bit version + of cpmVirtualProcessMemAllocated." + ::= { cpmVirtualProcessEntry 11 } + +cpmVirtualProcessMemFreedOvrflw OBJECT-TYPE + SYNTAX Gauge32 + UNITS "bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object represents the upper 32-bit of + cpmVirtualProcessMemFreed. This object needs + to be supported only when the value of + cpmVirtualProcessMemFreed exceeds 32-bit, + otherwise this object value would be set to 0." + ::= { cpmVirtualProcessEntry 12 } + +cpmVirtualProcessHCMemFreed OBJECT-TYPE + SYNTAX CounterBasedGauge64 + UNITS "bytes" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object indicates the memory freed by the virtual process + inside the address space of a process running on Native OS.This + object is a 64-bit version of cpmVirtualProcessMemAllocated." + ::= { cpmVirtualProcessEntry 13 } + -- History table contains the statistics for the processes -- qualified to be a part of history table. @@ -1356,12 +1944,12 @@ cpmVirtualProcessRuntime OBJECT-TYPE -- for past 5 second period. cpmCPUProcessHistoryTable OBJECT-TYPE - SYNTAX SEQUENCE OF CpmCPUProcessHistoryEntry + SYNTAX SEQUENCE OF CpmCPUProcessHistoryEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A list of process history entries. This table contains - CPU utilization of processes which crossed the + CPU utilization of processes which crossed the cpmCPUHistoryThreshold." ::= { cpmCPUHistory 4 } @@ -1374,13 +1962,13 @@ cpmCPUProcessHistoryEntry OBJECT-TYPE statistics. The entries in this table will have corresponding entires in the cpmCPUHistoryTable. The entries in this table get deleted when the entry - associated with this entry in the cpmCPUHistoryTable + associated with this entry in the cpmCPUHistoryTable gets deleted." INDEX { cpmCPUTotalIndex, cpmCPUHistoryReportId, cpmCPUProcessHistoryIndex - } + } ::= { cpmCPUProcessHistoryTable 1 } CpmCPUProcessHistoryEntry ::= SEQUENCE { @@ -1397,9 +1985,9 @@ cpmCPUProcessHistoryIndex OBJECT-TYPE STATUS current DESCRIPTION "An index that uniquely identifies an entry in - the cmpCPUProcessHistory table among those in the - same report. This index is between 1 to N, - where N is the cpmCPUHistoryReportSize." + the cmpCPUProcessHistory table among those in the + same report. This index is between 1 to N, + where N is the cpmCPUHistoryReportSize." ::= { cpmCPUProcessHistoryEntry 1 } cpmCPUHistoryProcId OBJECT-TYPE @@ -1407,7 +1995,7 @@ cpmCPUHistoryProcId OBJECT-TYPE MAX-ACCESS read-only STATUS current DESCRIPTION - "The process Id associated with this entry." + "The process Id associated with this entry." ::= { cpmCPUProcessHistoryEntry 2 } cpmCPUHistoryProcName OBJECT-TYPE @@ -1415,7 +2003,7 @@ cpmCPUHistoryProcName OBJECT-TYPE MAX-ACCESS read-only STATUS current DESCRIPTION - "The process name associated with this entry." + "The process name associated with this entry." ::= { cpmCPUProcessHistoryEntry 3 } cpmCPUHistoryProcCreated OBJECT-TYPE @@ -1424,8 +2012,8 @@ cpmCPUHistoryProcCreated OBJECT-TYPE STATUS current DESCRIPTION "The time when the process was created. The process ID - and the time when the process was created, uniquely - identifies a process." + and the time when the process was created, uniquely + identifies a process." ::= { cpmCPUProcessHistoryEntry 4 } cpmCPUHistoryProcUtil OBJECT-TYPE @@ -1435,9 +2023,9 @@ cpmCPUHistoryProcUtil OBJECT-TYPE STATUS current DESCRIPTION "The percentage CPU utilization of a process at - cpmCPUHistoryCreatedTime." + cpmCPUHistoryCreatedTime." ::= { cpmCPUProcessHistoryEntry 5 } - + -- notifications @@ -1461,10 +2049,10 @@ cpmCPURisingThreshold NOTIFICATION-TYPE "A cpmCPURisingThreshold notification is sent when configured rising CPU utilization threshold (cpmCPURisingThresholdValue) is reached and - CPU utilization remained above the threshold + CPU utilization remained above the threshold for configured interval(cpmCPURisingThresholdPeriod) - and such a notification is requested. - The cpmProcExtUtil5SecRev and cpmProcessTimeCreated + and such a notification is requested. + The cpmProcExtUtil5SecRev and cpmProcessTimeCreated objects can be repeated multiple times in a notification indicating the top users of CPU." ::= { ciscoProcessMIBNotifs 1 } @@ -1479,10 +2067,10 @@ cpmCPUFallingThreshold NOTIFICATION-TYPE DESCRIPTION "A cpmCPUFallingThresholdTrap is sent when the configured falling threshold - (cpmCPURisingThresholdValue) - is reached and CPU utilization remained under - threshold for configured - interval (cpmCPUFallingThresholdPeriod) + (cpmCPURisingThresholdValue) + is reached and CPU utilization remained under + threshold for configured + interval (cpmCPUFallingThresholdPeriod) and such a notification is requested." ::= { ciscoProcessMIBNotifs 2 } -- conformance information @@ -1501,7 +2089,7 @@ cProcessMIBCompliance MODULE-COMPLIANCE STATUS deprecated DESCRIPTION "The compliance statement for entities which implement - the Cisco Process MIB. This is deprecated and new + the Cisco Process MIB. This is deprecated and new compliance cProcessMIBComplianceRev is added." MODULE -- this module MANDATORY-GROUPS { @@ -1558,12 +2146,12 @@ cProcessMIBComplianceRev1 MODULE-COMPLIANCE GROUP cpmCPUThresholdNotificationGroup DESCRIPTION "The cpmCPUThresholdNotificationGroup is optional and - these traps indicates that + these traps indicates that configured threshold is reached." ::= { cpmCompliances 3 } cProcessMIBComplianceRev2 MODULE-COMPLIANCE - STATUS current + STATUS deprecated DESCRIPTION "The compliance statement for entities which implement the Cisco Process MIB. This compliance module @@ -1579,7 +2167,7 @@ cProcessMIBComplianceRev2 MODULE-COMPLIANCE GROUP cpmCPUThresholdNotificationGroup DESCRIPTION "The cpmCPUThresholdNotificationGroup is optional and - these traps indicates that configured threshold + these traps indicates that configured threshold is reached." GROUP cpmProcessExtGroupRev @@ -1627,6 +2215,333 @@ cProcessMIBComplianceRev2 MODULE-COMPLIANCE Posix standard kernel." ::= { cpmCompliances 4 } +cProcessMIBComplianceRev3 MODULE-COMPLIANCE + STATUS deprecated + DESCRIPTION + "The compliance statement for entities which implement + the Cisco Process MIB. This compliance module + deprecates cProcessMIBComplianceRev2." + MODULE -- this module + MANDATORY-GROUPS { cpmCPUTotalGroupRev1 } + + GROUP cpmCPUHistoryGroup + DESCRIPTION + "The cpmCPUHistoryGroup is optional and gives + the information about process CPU utilization history." + + GROUP cpmCPUThresholdNotificationGroup + DESCRIPTION + "The cpmCPUThresholdNotificationGroup is optional and + these traps indicates that configured threshold + is reached." + + GROUP cpmProcessExtGroupRev + DESCRIPTION + "The cpmProcessExtGroupRev is optional and gives + detailed process monitoring information." + + GROUP cpmCPUThresholdGroup + DESCRIPTION + "The cpmCPUThresholdGroup is optional and provides + information on configuring threshold values." + + GROUP cpmProcessGroupRev + DESCRIPTION + "The cpmProcessGroupRev is optional and provides common + process monitoring information." + + GROUP cpmCPUPosixMemoryGroup + DESCRIPTION + "The cpmCPUPosixMemoryGroup gives information about + CPU wide system memory of POSIX OS. + cpmCPUPosixMemoryGroup is mandatory if the Operating + System of the managed system supports Posix standard + kernel." + + GROUP cpmPosixProcessGroup + DESCRIPTION + "The cpmPosixProcessGroup gives information about + POSIX process. cpmPosixProcessGroup is mandatory if + the Operating System of the managed system + supports Posix standard kernel." + + GROUP cpmThreadGroup + DESCRIPTION + "The cpmThreadGroup gives information about POSIX + threads. cpmThreadGroup is mandatory if the Operating + System of the managed system supports Posix standard + kernel." + + GROUP cpmVirtualProcessGroup + DESCRIPTION + "The cpmVirtualProcessGroup gives information about + virtual process. cpmVirtualProcessGroup is mandatory + Operating System of the managed system supports + Posix standard kernel." + + GROUP cpmCPUTotalOverflowGroup + DESCRIPTION + "This group is an optional group for the devices which + run on 32-bit operating system." + + GROUP cpmCPUTotalHCGroup + DESCRIPTION + "This group is an optional group for the devices which + run on 32-bit operating system." + + GROUP cpmProcessExtRevOverflowGroup + DESCRIPTION + "This group is an optional group for the devices which + run on 32-bit operating system." + + GROUP cpmProcessExtRevHCGroup + DESCRIPTION + "This group is an optional group for the devices which + run on 32-bit operating system." + + GROUP cpmThreadOverflowGroup + DESCRIPTION + "This group is an optional group for the devices which + run on 32-bit operating system." + + GROUP cpmThreadHCGroup + DESCRIPTION + "This group is an optional group for the devices which + run on 32-bit operating system." + + GROUP cpmVirtualProcessOverflowGroup + DESCRIPTION + "This group is an optional group for the devices which + run on 32-bit operating system." + + GROUP cpmVirtualProcessHCGroup + DESCRIPTION + "This group is an optional group for the devices which + run on 32-bit operating system." + ::= { cpmCompliances 5 } + +cProcessMIBComplianceRev4 MODULE-COMPLIANCE + STATUS deprecated + DESCRIPTION + "The compliance statement for entities which implement + the Cisco Process MIB. This compliance module + deprecates cProcessMIBComplianceRev3." + MODULE -- this module + MANDATORY-GROUPS { cpmCPUTotalGroupRev1 } + + GROUP cpmCPUHistoryGroup + DESCRIPTION + "The cpmCPUHistoryGroup is optional and gives the information + about process CPU utilization history." + + GROUP cpmCPUThresholdNotificationGroup + DESCRIPTION + "The cpmCPUThresholdNotificationGroup is optional and these traps + indicates that configured threshold is reached." + + GROUP cpmProcessExtGroupRev + DESCRIPTION + "The cpmProcessExtGroupRev is optional and gives detailed process + monitoring information." + + GROUP cpmCPUThresholdGroup + DESCRIPTION + "The cpmCPUThresholdGroup is optional and provides information on + configuring threshold values." + + GROUP cpmProcessGroupRev + DESCRIPTION + "The cpmProcessGroupRev is optional and provides common process + monitoring information." + + GROUP cpmCPUPosixMemoryGroup + DESCRIPTION + "The cpmCPUPosixMemoryGroup gives information about CPU wide + system memory of POSIX OS. + cpmCPUPosixMemoryGroup is mandatory if the Operating System of + the managed system supports Posix standard kernel." + + GROUP cpmPosixProcessGroup + DESCRIPTION + "The cpmPosixProcessGroup gives information about POSIX process. + cpmPosixProcessGroup is mandatory if the Operating System of the + managed system supports Posix standard kernel." + + GROUP cpmThreadGroup + DESCRIPTION + "The cpmThreadGroup gives information about POSIX threads. + cpmThreadGroup is mandatory if the Operating System of the + managed system supports Posix standard kernel." + + GROUP cpmVirtualProcessGroup + DESCRIPTION + "The cpmVirtualProcessGroup gives information about virtual + process.cpmVirtualProcessGroup is mandatory Operating System of + the managed system supports Posix standard kernel." + + GROUP cpmCPUTotalOverflowGroup + DESCRIPTION + "This group is an optional group for the devices which run on + 32-bit operating system" + + GROUP cpmCPUTotalHCGroup + DESCRIPTION + "This group is an optional group for the devices which run on + 32-bit operating system" + + GROUP cpmProcessExtRevOverflowGroup + DESCRIPTION + "This group is an optional group for the devices which run on + 32-bit operating system" + + GROUP cpmProcessExtRevHCGroup + DESCRIPTION + "This group is an optional group for the devices which run on + 32-bit operating system" + + GROUP cpmThreadOverflowGroup + DESCRIPTION + "This group is an optional group for the devices which run on + 32-bit operating system" + + GROUP cpmThreadHCGroup + DESCRIPTION + "This group is an optional group for the devices which run on + 32-bit operating system" + + GROUP cpmVirtualProcessOverflowGroup + DESCRIPTION + "This group is an optional group for the devices which run on + 32-bit operating system" + + GROUP cpmVirtualProcessHCGroup + DESCRIPTION + "This group is an optional group for the devices which run on + 32-bit operating system" + + GROUP cpmCPULoadAvgGroup + DESCRIPTION + "The cpmCPULoadAvgGroup is optional and provides CPU load + average information.This Group is valid only for the device + which supports it." + ::= { cpmCompliances 6 } + +cProcessMIBComplianceRev5 MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for entities which implement + the Cisco Process MIB. This compliance module + deprecates cProcessMIBComplianceRev4" + MODULE -- this module + MANDATORY-GROUPS { cpmCPUTotalGroupRev1 } + + GROUP cpmCoreGroup + DESCRIPTION + "The cpmCoreGroup is optoinal and gives per-core CPU utilization." + + GROUP cpmCPUHistoryGroup + DESCRIPTION + "The cpmCPUHistoryGroup is optional and gives the information + about process CPU utilization history." + + GROUP cpmCPUThresholdNotificationGroup + DESCRIPTION + "The cpmCPUThresholdNotificationGroup is optional and these + traps indicates that configured threshold is reached." + + GROUP cpmProcessExtGroupRev + DESCRIPTION + "The cpmProcessExtGroupRev is optional and gives detailed process + monitoring information." + + GROUP cpmCPUThresholdGroup + DESCRIPTION + "The cpmCPUThresholdGroup is optional and provides information + on configuring threshold values." + + GROUP cpmProcessGroupRev + DESCRIPTION + "The cpmProcessGroupRev is optional and provides common process + monitoring information." + + GROUP cpmCPUPosixMemoryGroup + DESCRIPTION + "The cpmCPUPosixMemoryGroup gives information about CPU wide + system memory of POSIX OS. + cpmCPUPosixMemoryGroup is mandatory if the Operating System of + the managed system supports Posix standard kernel." + + GROUP cpmPosixProcessGroup + DESCRIPTION + "The cpmPosixProcessGroup gives information about POSIX process. + cpmPosixProcessGroup is mandatory if the Operating System + of the managed system supports Posix standard kernel." + + GROUP cpmThreadGroup + DESCRIPTION + "The cpmThreadGroup gives information about POSIX threads. + cpmThreadGroup is mandatory if the Operating System of the + managed system supports Posix standard kernel." + + GROUP cpmVirtualProcessGroup + DESCRIPTION + "The cpmVirtualProcessGroup gives information about virtual + process.cpmVirtualProcessGroup is mandatory Operating System of + the managed system supports Posix standard kernel." + + GROUP cpmCPUTotalOverflowGroup + DESCRIPTION + "This group is an optional group for the devices which run on + 32-bit operating system." + + GROUP cpmCPUTotalHCGroup + DESCRIPTION + "This group is an optional group for the devices which run on + 32-bit operating system" + + GROUP cpmProcessExtRevOverflowGroup + DESCRIPTION + "This group is an optional group for the devices which run on + 32-bit operating system" + + GROUP cpmProcessExtRevHCGroup + DESCRIPTION + "This group is an optional group for the devices which run on + 32-bit operating system" + + GROUP cpmThreadOverflowGroup + DESCRIPTION + "This group is an optional group for the devices which run on + 32-bit operating system" + + GROUP cpmThreadHCGroup + DESCRIPTION + "This group is an optional group for the devices which run on + 32-bit operating system" + + GROUP cpmVirtualProcessOverflowGroup + DESCRIPTION + "This group is an optional group for the devices which run on + 32-bit operating system." + + GROUP cpmVirtualProcessHCGroup + DESCRIPTION + "This group is an optional group for the devices which run on + 32-bit operating system" + + GROUP cpmCPULoadAvgGroup + DESCRIPTION + "The cpmCPULoadAvgGroup is optional and provides CPU load + average information.This Group is valid only for the device + which supports it" + + GROUP cpmCPUTotalMemoryCommitGroup + DESCRIPTION + "The cpmCPUTotalMemoryCommitGroup is optional and provides system + Committed memory information.This Group is valid only for the + device which supports it." + ::= { cpmCompliances 7 } + -- units of conformance cpmCPUTotalGroup OBJECT-GROUP @@ -1656,7 +2571,7 @@ cpmProcessGroup OBJECT-GROUP STATUS deprecated DESCRIPTION "A collection of objects providing common process - monitoring information. This group is mandatory for + monitoring information. This group is mandatory for all cisco devices. This object is deprecated by cpmProcessGroupRev." ::= { cpmGroups 2 } @@ -1675,9 +2590,9 @@ cpmProcessExtGroup OBJECT-GROUP STATUS deprecated DESCRIPTION "A collection of objects providing additional and - more detailed process monitoring information. This - group is mandatory for all cisco devices that have - the internal capability to keep this information. + more detailed process monitoring information. This + group is mandatory for all cisco devices that have + the internal capability to keep this information. This group is deprecated and new group cpmProcessExtGroupRev is added." ::= { cpmGroups 3 } @@ -1714,13 +2629,13 @@ cpmProcessExtGroupRev OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing additional and - more detailed process monitoring information. This - group is mandatory for all cisco devices that have + more detailed process monitoring information. This + group is mandatory for all cisco devices that have the internal capability to keep this information. This group is formed after deprecating cpmProcessExtGroup. cpmProcExtMemAllocatedRev, cpmProcExtMemFreedRev, cpmProcExtInvokedRev, cpmProcExtRuntimeRev, - cpmProcExtUtil5SecRev, cpmProcExtUtil1MinRev and + cpmProcExtUtil5SecRev, cpmProcExtUtil1MinRev and cpmProcExtUtil5MinRev are the new objects added." ::= { cpmGroups 5 } @@ -1734,7 +2649,7 @@ cpmProcessGroupRev OBJECT-GROUP STATUS current DESCRIPTION "A collection of objects providing common process - monitoring information. This group is mandatory for + monitoring information. This group is mandatory for all cisco devices. This object deprecates cpmProcessGroup." ::= { cpmGroups 6 } @@ -1863,7 +2778,138 @@ cpmVirtualProcessGroup OBJECT-GROUP information on devices that can run virtual machines." ::= { cpmGroups 14 } +cpmCPUTotalOverflowGroup OBJECT-GROUP + OBJECTS { + cpmCPUMemoryUsedOvrflw, + cpmCPUMemoryFreeOvrflw, + cpmCPUMemoryKernelReservedOvrflw, + cpmCPUMemoryLowestOvrflw + } + STATUS current + DESCRIPTION + "A collection of Overflow (Ovrflw) objects providing CPU load + monitoring information." + ::= { cpmGroups 15 } + +cpmCPUTotalHCGroup OBJECT-GROUP + OBJECTS { + cpmCPUMemoryHCUsed, + cpmCPUMemoryHCFree, + cpmCPUMemoryHCKernelReserved, + cpmCPUMemoryHCLowest + } + STATUS current + DESCRIPTION + "A collection of High Capacity (HC) objects providing CPU + load monitoring information." + ::= { cpmGroups 16 } + +cpmProcessExtRevOverflowGroup OBJECT-GROUP + OBJECTS { + cpmProcExtMemAllocatedRevOvrflw, + cpmProcExtMemFreedRevOvrflw, + cpmProcessTextSegmentSizeOvrflw, + cpmProcessDataSegmentSizeOvrflw, + cpmProcessStackSizeOvrflw, + cpmProcessDynamicMemorySizeOvrflw + } + STATUS current + DESCRIPTION + "A collection of Overflow objects providing additional + and more detailed process monitoring information." + ::= { cpmGroups 17 } + +cpmProcessExtRevHCGroup OBJECT-GROUP + OBJECTS { + cpmProcExtHCMemAllocatedRev, + cpmProcExtHCMemFreedRev, + cpmProcessHCTextSegmentSize, + cpmProcessHCDataSegmentSize, + cpmProcessHCStackSize, + cpmProcessHCDynamicMemorySize + } + STATUS current + DESCRIPTION + "A collection of High Capacity objects providing + additional and more detailed process monitoring + information." + ::= { cpmGroups 18 } + +cpmThreadOverflowGroup OBJECT-GROUP + OBJECTS { cpmThreadStackSizeOvrflw } + STATUS current + DESCRIPTION + "A collection of Overflow objects providing thread + information on devices running POSIX compliant OS." + ::= { cpmGroups 19 } + +cpmThreadHCGroup OBJECT-GROUP + OBJECTS { cpmThreadHCStackSize } + STATUS current + DESCRIPTION + "A collection of High Capacity objects providing thread + information on devices running POSIX compliant OS." + ::= { cpmGroups 20 } + +cpmVirtualProcessOverflowGroup OBJECT-GROUP + OBJECTS { + cpmVirtualProcessMemAllocatedOvrflw, + cpmVirtualProcessMemFreedOvrflw + } + STATUS current + DESCRIPTION + "A collection of Overflow objects providing virtual process + information on devices that can run virtual machines." + ::= { cpmGroups 21 } + +cpmVirtualProcessHCGroup OBJECT-GROUP + OBJECTS { + cpmVirtualProcessHCMemAllocated, + cpmVirtualProcessHCMemFreed + } + STATUS current + DESCRIPTION + "A collection of High Capacity objects providing virtual process + information on devices that can run virtual machines." + ::= { cpmGroups 22 } + +cpmCPULoadAvgGroup OBJECT-GROUP + OBJECTS { + cpmCPULoadAvg1min, + cpmCPULoadAvg5min, + cpmCPULoadAvg15min + } + STATUS current + DESCRIPTION + "A collection of objects providing CPU load average + information" + ::= { cpmGroups 23 } + +cpmCPUTotalMemoryCommitGroup OBJECT-GROUP + OBJECTS { + cpmCPUMemoryCommitted, + cpmCPUMemoryCommittedOvrflw, + cpmCPUMemoryHCCommitted + } + STATUS current + DESCRIPTION + "A collection of objects providing CPU system Committed memory + information." + ::= { cpmGroups 24 } + +cpmCoreGroup OBJECT-GROUP + OBJECTS { + cpmCorePhysicalIndex, + cpmCore5sec, + cpmCore1min, + cpmCore5min, + cpmCoreLoadAvg1min, + cpmCoreLoadAvg5min, + cpmCoreLoadAvg15min + } + STATUS current + DESCRIPTION + "A collection of objects providing per-Core CPU utilization." + ::= { cpmGroups 25 } + END - - - diff --git a/tests/data/iosxe_c3650.json b/tests/data/iosxe_c3650.json new file mode 100644 index 0000000000..069fbe63d2 --- /dev/null +++ b/tests/data/iosxe_c3650.json @@ -0,0 +1,53 @@ +{ + "processors": { + "discovery": { + "processors": [ + { + "entPhysicalIndex": "1000", + "hrDeviceIndex": "0", + "processor_oid": ".1.3.6.1.4.1.9.9.109.1.1.2.1.5.1000.0", + "processor_index": "1000.0", + "processor_type": "cpm", + "processor_usage": "8", + "processor_descr": "Switch 1: Core 0", + "processor_precision": "1", + "processor_perc_warn": "75" + }, + { + "entPhysicalIndex": "1000", + "hrDeviceIndex": "0", + "processor_oid": ".1.3.6.1.4.1.9.9.109.1.1.2.1.5.1000.1", + "processor_index": "1000.1", + "processor_type": "cpm", + "processor_usage": "2", + "processor_descr": "Switch 1: Core 1", + "processor_precision": "1", + "processor_perc_warn": "75" + }, + { + "entPhysicalIndex": "1000", + "hrDeviceIndex": "0", + "processor_oid": ".1.3.6.1.4.1.9.9.109.1.1.2.1.5.1000.2", + "processor_index": "1000.2", + "processor_type": "cpm", + "processor_usage": "3", + "processor_descr": "Switch 1: Core 2", + "processor_precision": "1", + "processor_perc_warn": "75" + }, + { + "entPhysicalIndex": "1000", + "hrDeviceIndex": "0", + "processor_oid": ".1.3.6.1.4.1.9.9.109.1.1.2.1.5.1000.3", + "processor_index": "1000.3", + "processor_type": "cpm", + "processor_usage": "2", + "processor_descr": "Switch 1: Core 3", + "processor_precision": "1", + "processor_perc_warn": "75" + } + ] + }, + "poller": "matches discovery" + } +} diff --git a/tests/snmpsim/iosxe_c3650.snmprec b/tests/snmpsim/iosxe_c3650.snmprec new file mode 100644 index 0000000000..6a4eb3b6eb --- /dev/null +++ b/tests/snmpsim/iosxe_c3650.snmprec @@ -0,0 +1,46 @@ +1.3.6.1.2.1.1.1.0|4x|436973636f20494f5320536f6674776172652c20494f532d584520536f6674776172652c20436174616c797374204c332053776974636820536f6674776172652028434154334b5f4341412d554e4956455253414c4b392d4d292c2056657273696f6e2030332e30372e3035452052454c4541534520534f4654574152452028666331290a546563686e6963616c20537570706f72743a20687474703a2f2f7777772e636973636f2e636f6d2f74656368737570706f72740d0a436f707972696768742028632920313938362d3230313720627920436973636f2053797374656d732c20496e632e0d0a436f6d70696c6564204672692031302d4665622d +1.3.6.1.2.1.1.2.0|6|1.3.6.1.4.1.9.1.2066 +1.3.6.1.2.1.1.3.0|67|1819136138 +1.3.6.1.2.1.1.4.0|4| +1.3.6.1.2.1.1.5.0|4| +1.3.6.1.2.1.1.6.0|4| +1.3.6.1.2.1.47.1.1.1.1.7.1000|4|Switch 1 +1.3.6.1.4.1.9.9.109.1.1.1.1.2.1000|2|1000 +1.3.6.1.4.1.9.9.109.1.1.1.1.3.1000|66|3 +1.3.6.1.4.1.9.9.109.1.1.1.1.4.1000|66|3 +1.3.6.1.4.1.9.9.109.1.1.1.1.5.1000|66|3 +1.3.6.1.4.1.9.9.109.1.1.1.1.6.1000|66|3 +1.3.6.1.4.1.9.9.109.1.1.1.1.7.1000|66|3 +1.3.6.1.4.1.9.9.109.1.1.1.1.8.1000|66|3 +1.3.6.1.4.1.9.9.109.1.1.1.1.9.1000|66|5 +1.3.6.1.4.1.9.9.109.1.1.1.1.10.1000|66|3 +1.3.6.1.4.1.9.9.109.1.1.1.1.11.1000|66|0 +1.3.6.1.4.1.9.9.109.1.1.1.1.12.1000|66|1530216 +1.3.6.1.4.1.9.9.109.1.1.1.1.13.1000|66|2407092 +1.3.6.1.4.1.9.9.109.1.1.1.1.14.1000|66|222060 +1.3.6.1.4.1.9.9.109.1.1.1.1.15.1000|66|1796564220 +1.3.6.1.4.1.9.9.109.1.1.1.1.16.1000|66|0 +1.3.6.1.4.1.9.9.109.1.1.1.1.17.1000|70|0 +1.3.6.1.4.1.9.9.109.1.1.1.1.18.1000|66|0 +1.3.6.1.4.1.9.9.109.1.1.1.1.19.1000|70|0 +1.3.6.1.4.1.9.9.109.1.1.1.1.20.1000|66|0 +1.3.6.1.4.1.9.9.109.1.1.1.1.21.1000|70|0 +1.3.6.1.4.1.9.9.109.1.1.1.1.22.1000|66|0 +1.3.6.1.4.1.9.9.109.1.1.1.1.23.1000|70|0 +1.3.6.1.4.1.9.9.109.1.1.2.1.2.1000.0|2|0 +1.3.6.1.4.1.9.9.109.1.1.2.1.2.1000.1|2|0 +1.3.6.1.4.1.9.9.109.1.1.2.1.2.1000.2|2|0 +1.3.6.1.4.1.9.9.109.1.1.2.1.2.1000.3|2|0 +1.3.6.1.4.1.9.9.109.1.1.2.1.3.1000.0|66|9 +1.3.6.1.4.1.9.9.109.1.1.2.1.3.1000.1|66|2 +1.3.6.1.4.1.9.9.109.1.1.2.1.3.1000.2|66|0 +1.3.6.1.4.1.9.9.109.1.1.2.1.3.1000.3|66|0 +1.3.6.1.4.1.9.9.109.1.1.2.1.4.1000.0|66|8 +1.3.6.1.4.1.9.9.109.1.1.2.1.4.1000.1|66|3 +1.3.6.1.4.1.9.9.109.1.1.2.1.4.1000.2|66|3 +1.3.6.1.4.1.9.9.109.1.1.2.1.4.1000.3|66|1 +1.3.6.1.4.1.9.9.109.1.1.2.1.5.1000.0|66|8 +1.3.6.1.4.1.9.9.109.1.1.2.1.5.1000.1|66|2 +1.3.6.1.4.1.9.9.109.1.1.2.1.5.1000.2|66|3 +1.3.6.1.4.1.9.9.109.1.1.2.1.5.1000.3|66|2 +1.3.6.1.6.3.10.2.1.3.0|2|18191089