Reading the Cast Iron SNMP MIB
Provides examples of how to read and organize the content of Cast Iron SNMP MIBs.
Each MIB module has a module-identity, which describes the purpose for the MIB. For example, the NetSuite Module provides access to the NetSuite online service. Each MIB module also contains a comment section that provides a high-level overview of its contents. Content like the Object Summary lists the name and OID of every object in the MIB, much like a table of contents, and allows you to examine the layout and the type of data that is being provided.
In the following example, ciIaProjectSummary is an organizational node that contains general information about projects on the Integration Appliance. Like a directory, the ciIaProjectSummary organizational node contains object types that provide information about the number of projects, number of running orchestrations, number of stopped orchestrations, number of running jobs, number of completed jobs, and number of errored jobs.
-- ciIaProjectSummary ciia.1.1.1
-- ciIaNbrProjects ciia.1.1.1.1
-- ciIaNbrRunningOrchs ciia.1.1.1.2
-- ciIaNbrStoppedOrchs ciia.1.1.1.3
-- ciIaNbrRunningJobs ciia.1.1.1.4
-- ciIaNbrCompletedJobs ciia.1.1.1.5
-- ciIaNbrErroredJobs ciia.1.1.1.6
To get more information about the meaning of one of the objects, search the file for the name of the object. For example, searching for ciIaNbrRunningJobs returns the following block of information:
ciIaNbrRunningJobs OBJECT-TYPE -- ciia.1.1.1.4
SYNTAX Unsigned32
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Total number of currently running jobs.
"
::= { ciIaProjectSummary 4 }
- ciIaNbrRunningJobs OBJECT-TYPE - Defines the name of the
object. Note: Next to the object name, there is a shortened form of the OID (– ciia.1.1.1.4).
- SYNTAX Unsigned32 - An unsigned integer whose value could go up or down over time.
- MAX-ACCESS read-only - A read-only value that the system manager can ask for but cannot change.
- STATUS -
- DESCRIPTION - Describes the object.
Polling for ProjectSummary information retrieves data that is similar to the following example:
$ snmpwalk -v 2c -c public -M "+/home/choller/mibs" -m "+CASTIRON-IA-MIB" flintstone2 ciIaProjectSummary
CASTIRON-IA-MIB::ciIaNbrProjects.0 = Gauge32: 2
CASTIRON-IA-MIB::ciIaNbrRunningOrchs.0 = Gauge32: 0
CASTIRON-IA-MIB::ciIaNbrStoppedOrchs.0 = Gauge32: 14
CASTIRON-IA-MIB::ciIaNbrRunningJobs.0 = Gauge32: 0
CASTIRON-IA-MIB::ciIaNbrCompletedJobs.0 = Gauge32: 0
CASTIRON-IA-MIB::ciIaNbrErroredJobs.0 = Gauge32: 0
ciIaProjectTable is another example of an organizational node that contains information about each project on the Integration Appliance. Like a directory, the ciIaProjectTable organizational node contains object types that provide information like the project name, project version, project configuration, project state, and so on.
-- ciIaProjectTable ciia.1.1.2
-- ciIaProjectEntry ciia.1.1.2.1
-- ciIaProjEntryIndex ciia.1.1.2.1.1
-- ciIaProjEntryName ciia.1.1.2.1.2
-- ciIaProjEntryVersion ciia.1.1.2.1.3
-- ciIaProjEntryConfig ciia.1.1.2.1.4
-- ciIaProjEntryState ciia.1.1.2.1.5
-- ciIaProjEntryNbrRunning ciia.1.1.2.1.6
-- ciIaProjEntryNbrCompleted ciia.1.1.2.1.7
-- ciIaProjEntryNbrErrored ciia.1.1.2.1.8
-- ciIaProjEntryTimePublished ciia.1.1.2.1.9
Polling for ProjectTable information retrieves data that is similar to the following example:
$ snmpwalk -v 2c -c public -M "+/home/choller/mibs" -m "+CASTIRON-IA-MIB" flintstone2 ciIaProjectSummary
CASTIRON-IA-MIB::ciIaNbrProjects.0 = Gauge32: 2
CASTIRON-IA-MIB::ciIaNbrRunningOrchs.0 = Gauge32: 0
CASTIRON-IA-MIB::ciIaNbrStoppedOrchs.0 = Gauge32: 14
CASTIRON-IA-MIB::ciIaNbrRunningJobs.0 = Gauge32: 0
CASTIRON-IA-MIB::ciIaNbrCompletedJobs.0 = Gauge32: 0
CASTIRON-IA-MIB::ciIaNbrErroredJobs.0 = Gauge32: 0
The object types are much like columns in a table that store data generated by events that occur on the Integration Appliance. For example, publishing and cloning projects are events that generate ProjectTable data. You can poll the Integration Appliance to retrieve this data. Data for two events: publishing a project and cloning a project are displayed in the following example:
$ snmpwalk -v 2c -c public -M "+/home/choller/mibs" -m "+CASTIRON-IA-MIB" flintstone2 ciIaProjectTable
CASTIRON-IA-MIB::ciIaProjEntryName.98304 = STRING: OnlineLicensing
CASTIRON-IA-MIB::ciIaProjEntryName.98305 = STRING: OnlineLicensing
CASTIRON-IA-MIB::ciIaProjEntryVersion.98304 = STRING: 1.0
CASTIRON-IA-MIB::ciIaProjEntryVersion.98305 = STRING: 1.0
CASTIRON-IA-MIB::ciIaProjEntryConfig.98304 = STRING: Default
CASTIRON-IA-MIB::ciIaProjEntryConfig.98305 = STRING: OnlineLicensingClone
CASTIRON-IA-MIB::ciIaProjEntryState.98304 = INTEGER: undeployed(1)
CASTIRON-IA-MIB::ciIaProjEntryState.98305 = INTEGER: undeployed(1)
CASTIRON-IA-MIB::ciIaProjEntryNbrRunning.98304 = Gauge32: 0
CASTIRON-IA-MIB::ciIaProjEntryNbrRunning.98305 = Gauge32: 0
CASTIRON-IA-MIB::ciIaProjEntryNbrCompleted.98304 = Counter32: 0
CASTIRON-IA-MIB::ciIaProjEntryNbrCompleted.98305 = Counter32: 0
CASTIRON-IA-MIB::ciIaProjEntryNbrErrored.98304 = Counter32: 0
CASTIRON-IA-MIB::ciIaProjEntryNbrErrored.98305 = Counter32: 0
CASTIRON-IA-MIB::ciIaProjEntryTimePublished.98304 = STRING: 2009-6-12,16:36:20.0,+0:0
CASTIRON-IA-MIB::ciIaProjEntryTimePublished.98305 = STRING: 2009-6-12,16:36
As more events occur, the output can become increasingly difficult to read. To generate a more readable output, it is recommended to use the snmptable command to display the data in a table format. Data for each event displays as a new row.
$ snmptable -v 2c -c public -M "+/home/choller/mibs" -m "+CASTIRON-IA-MIB" flintstone2 ciIaProjectTable
SNMP table: CASTIRON-IA-MIB::ciIaProjectTable
ciIaProjEntryName ciIaProjEntryVersion ciIaProjEntryConfig ciIaProjEntryState ciIaProjEntryNbrRunning ciIaProjEntryNbrCompleted ciIaProjEntryNbrErrored ciIaProjEntryTimePublished
OnlineLicensing 1.0 Default undeployed 0 0 0 2009-6-12,16:36:20.0,+0:0
OnlineLicensing 1.0 OnlineLicensingClone undeployed 0 0 0 2009-6-12,16:36:20.0,+0:0