The Master Agent status file contains information for the various subagents spawned by the Master Agent. The Master Agent uses this file exclusively. The Master Agent dynamically adds information to this file, and therefore you should not edit it manually. Whenever the Master Agent spawns a subagent process, it creates an entry in this file. The purpose of this file is for Master Agent recovery, in case the Master Agent dies or is killed. When the Master Agent restarts, the entries in this file indicate the subagent(s) it previously created and the corresponding port numbers. The Master Agent reads each entry in this file and compares it with the entries in the Master Agent resource configuration file. If the entry is not found in the resource file, the Master Agent kills that process. Whenever the entries are present in both files, the Master Agent attempts to access the subagent through the port.
Three tables under Sun-specific enterprise MIB OID are defined that facilitate the Solstice Enterprise Agents technology. The following table example is meant to provide manageability of all subagents. The information in this table provides the identity of the subagent. This table contains the subagent name, and the subagent port number. An example of the subtree's OIDs managed by each subagent is not shown.
The following is an example of a MIB containing all types of MIB variables. The MIB also includes tables. When this MIB is run through mibcodegen, it generates the appropriate MIB database and the stub code to build a subagent for this MIB.
DEMO-MIB DEFINITIONS ::= BEGIN IMPORTS OBJECT-TYPE, Counter32, Gauge32 FROM SNMPv2-SMI DisplayString, TimeStamp FROM SNMPv2-TC; mib-2 OBJECT IDENTIFIER ::= { mgmt 1 } sun OBJECT IDENTIFIER ::= { enterprises 42 } demo OBJECT IDENTIFIER ::= { sun 1000 } -- -- Some objects -- demoString OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-write STATUS current DESCRIPTION "A read-write object of type String." ::= {demo 1} demoInteger OBJECT-TYPE ::= {demoTable 1} DemoEntry ::= SEQUENCE { demoEntryIndex INTEGER, demoEntryString DisplayString, demoEntryInteger INTEGER, demoEntryOid OBJECT IDENTIFIER } SYNTAX INTEGER { up(1), down(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "A read-write object of type Integer." ::= {demo 2} demoOid OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS read-write STATUS current DESCRIPTION "A read-write object of type Oid." ::= {demo 3} -- A table composed of some columns demoTable OBJECT-TYPE SYNTAX SEQUENCE OF DemoEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table." ::= {demo 10} demoEntry OBJECT-TYPE SYNTAX DemoEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in the table demoTable." INDEX {demoEntryIndex} demoEntryIndex OBJECT-TYPE SYNTAX INTEGER (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An index to uniquely identify the entry." ::= {demoEntry 1} demoEntryString OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-write STATUS current DESCRIPTION "A read-write column of type String." ::= {demoEntry 2} demoEntryInteger OBJECT-TYPE SYNTAX INTEGER { up(1), down(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "A read-write column of type Integer." ::= {demoEntry 3} demoEntryOid OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS read-write STATUS current DESCRIPTION "A read-write column of type Oid." ::= {demoEntry 4} demoTrap TRAP-TYPE ENTERPRISE sun VARIABLES { demoInteger, demoString, demoOid} DESCRIPTION " Trap for testing." ::= 2 demoColdLinkTrap TRAP-TYPE ENTERPRISE snmp DESCRIPTION " Trap for testing." ::= 0 END