TRAPEZE-NETWORKS-TRAPLOG-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Integer32, Unsigned32, TimeTicks, Counter32, Counter64, IpAddress FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF TEXTUAL-CONVENTION, TimeStamp, DateAndTime FROM SNMPv2-TC trpzMibs FROM TRAPEZE-NETWORKS-ROOT-MIB; trpzTraplogMib MODULE-IDENTITY LAST-UPDATED "200903220009Z" ORGANIZATION "Trapeze Networks" CONTACT-INFO "Trapeze Networks Technical Support www.trapezenetworks.com US: 866.TRPZ.TAC International: 925.474.2400 support@trapezenetworks.com" DESCRIPTION "Trap Log MIB: information about most recent traps generated by an Access Controller (wireless switch). A trap occurrence that could be logged corresponds to an event detected by the Access Controller (wireless switch). Not all kinds of events will cause a Trap Log entry to be added. The list of accepted notification types should be configurable. This MIB does _not_ specify any means for configuring the notification types accepted for logging (the ''filter''). Configuration options for filtering (not necessarily SNMP-based) should be described in the manuals for the wireless switch. There is _no_ guarantee that the Trap Log will be preserved in part or in total across restarts of the SNMP agent. The Trap Log as a whole operates like a circular buffer: if adding a new entry (trap occurrence) would exhaust the available resources, the oldest entry (or entries) will be discarded. This MIB does _not_ specify any means for configuring any of the resource limits applicable to trap logging. Copyright 2009 Trapeze Networks, Inc. All rights reserved. This Trapeze Networks SNMP Management Information Base Specification (Specification) embodies Trapeze Networks' confidential and proprietary intellectual property. Trapeze Networks retains all title and ownership in the Specification, including any revisions. This Specification is supplied 'AS IS' and Trapeze Networks makes no warranty, either express or implied, as to the use, operation, condition, or performance of the Specification." REVISION "200903220009Z" DESCRIPTION "v1.0.9: Initial version, for 7.1 release" ::= { trpzMibs 13 } -- Textual conventions TrpzTraplogTrapOccurrenceIndex ::= TEXTUAL-CONVENTION DISPLAY-HINT "d" STATUS current DESCRIPTION "Trap Occurrence Index (in the Trap Log). A monotonically increasing integer for the sole purpose of indexing entries within the trap log. When it reaches the maximum value, an extremely unlikely event, the agent wraps the value back to 1." SYNTAX Unsigned32 (1..4294967295) TrpzTraplogTrapOccurrenceIndexOrZero ::= TEXTUAL-CONVENTION DISPLAY-HINT "d" STATUS current DESCRIPTION "This textual convention is an extension of the TrpzTraplogTrapOccurrenceIndex convention. The latter defines a greater than zero value used to identify each trap occurrence recorded in the trap log. This extension permits the additional value of zero. A zero value means 'none', 'there is no such trap occurrence'." SYNTAX Unsigned32 (0 | 1..4294967295) -- -- The Traplog MIB Tree -- trpzTraplogMibObjects OBJECT IDENTIFIER ::= { trpzTraplogMib 1 } -- Reserved for future scalar objects (high-level status/control of Trap Log): -- trpzTraplogGlobalObjects OBJECT IDENTIFIER ::= { trpzTraplogMibObjects 1 } trpzTraplogGuideObjects OBJECT IDENTIFIER ::= { trpzTraplogMibObjects 2 } -- Object definitions -- ======================================== -- Global objects for managing the Trap Log -- -- Read-only scalar objects -- trpzTraplogOldestTrapIndex OBJECT-TYPE SYNTAX TrpzTraplogTrapOccurrenceIndexOrZero MAX-ACCESS read-only STATUS current DESCRIPTION "Index of the Oldest Trap occurrence currently stored in the Trap Log. This will be the first entry overwritten when the Trap Log gets full. A zero value means that no trap was logged yet (possibly because trap logging is disabled)." ::= { trpzTraplogGuideObjects 1 } trpzTraplogNewestTrapIndex OBJECT-TYPE SYNTAX TrpzTraplogTrapOccurrenceIndexOrZero MAX-ACCESS read-only STATUS current DESCRIPTION "Index of the Newest Trap occurrence currently stored in the Trap Log. A zero value means that no trap was logged yet (possibly because trap logging is disabled)." ::= { trpzTraplogGuideObjects 2 } trpzTraplogNewestTrapTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of sysUpTime when the latest entry was placed in the log. If the entry occurred before the most recent management system initialization this object value MUST be set to zero. If no trap was logged yet this object value MUST be set to zero. Otherwise should be same as the value of trpzTraplogTrapTime for the latest entry in trpzTraplogTrapTable, _if_ these objects were read at exactly same time." ::= { trpzTraplogGuideObjects 3 } trpzTraplogNewestTrapDateAndTime OBJECT-TYPE SYNTAX DateAndTime MAX-ACCESS read-only STATUS current DESCRIPTION "The local date and time of the latest trap occurrence. Instantiated only by systems that have date and time capability. A value of '0000000000000000'H (all zeros, length 8 octets) means that no trap was logged yet (possibly because trap logging is disabled). Otherwise should be same as the value of trpzTraplogTrapDateAndTime for the latest entry in trpzTraplogTrapTable, _if_ these objects were read at exactly same time." DEFVAL { '0000000000000000'H } ::= { trpzTraplogGuideObjects 4 } -- ========== -- Main table: trap occurrences -- -- The design of this table is based on the corresponding table -- from the standard NOTIFICATION-LOG-MIB (published as RFC 3014). -- trpzTraplogTrapTable OBJECT-TYPE SYNTAX SEQUENCE OF TrpzTraplogTrapEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The main Trap Log table: contains the most recent traps generated. The index of the oldest entry is specified by trpzTraplogOldestTrapIndex and the index of the youngest entry is specified by trpzTraplogNewestTrapIndex. It is an implementation-specific matter whether entries in this table are preserved across initializations of the management system. In general one would expect that they are not. Note that keeping entries across initializations of the management system leads to some confusion with counters and TimeStamps, since both of those are based on sysUpTime, which resets on management initialization. In this situation, counters apply only after the reset and trpzTraplogTrapTime for entries made before the reset MUST be set to 0." ::= { trpzTraplogMibObjects 3 } trpzTraplogTrapEntry OBJECT-TYPE SYNTAX TrpzTraplogTrapEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A Trap Log entry corresponds to a trap occurrence. Entries appear in this table when notifications occur and pass any filtering rules that may be configured on the switch. They are removed to make way for new entries due to lack of resources or when the configured limits are reached. If adding an entry would exceed the configured limits or system resources in general, the oldest entry (or entries) must be removed to make room for the new one. The index for an existing entry is not affected when a entry is added or removed from this table." INDEX { trpzTraplogTrapIndex } ::= { trpzTraplogTrapTable 1 } TrpzTraplogTrapEntry ::= SEQUENCE { trpzTraplogTrapIndex TrpzTraplogTrapOccurrenceIndex, trpzTraplogTrapTime TimeStamp, trpzTraplogTrapDateAndTime DateAndTime, trpzTraplogTrapNotificationID OBJECT IDENTIFIER, trpzTraplogTrapNumVars Unsigned32 } trpzTraplogTrapIndex OBJECT-TYPE SYNTAX TrpzTraplogTrapOccurrenceIndex MAX-ACCESS not-accessible STATUS current DESCRIPTION "A monotonically increasing integer for the sole purpose of indexing entries within this log. When it reaches the maximum value, an extremely unlikely event, the agent wraps the value back to 1." ::= { trpzTraplogTrapEntry 1 } trpzTraplogTrapTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of sysUpTime when the entry was placed in the log. If the entry occurred before the most recent management system initialization this object value MUST be set to zero." ::= { trpzTraplogTrapEntry 2 } trpzTraplogTrapDateAndTime OBJECT-TYPE SYNTAX DateAndTime MAX-ACCESS read-only STATUS current DESCRIPTION "The local date and time when the entry was logged, instantiated only by systems that have date and time capability." ::= { trpzTraplogTrapEntry 3 } trpzTraplogTrapNotificationID OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS read-only STATUS current DESCRIPTION "The NOTIFICATION-TYPE object identifier of the Notification that occurred." ::= { trpzTraplogTrapEntry 4 } trpzTraplogTrapNumVars OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS read-only STATUS current DESCRIPTION "The Number of Variable bindings that should have been logged (in trpzTraplogVarTable) for this trap occurrence." ::= { trpzTraplogTrapEntry 5 } -- ============ -- Detail table: Variable Bindings for the logged trap occurrences -- -- (Note: There may be traps without variable bindings.) -- -- The design of this table is based on the corresponding table -- from the standard NOTIFICATION-LOG-MIB (published as RFC 3014). -- trpzTraplogVarTable OBJECT-TYPE SYNTAX SEQUENCE OF TrpzTraplogVarEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Trap Log detail table: Variable bindings for the currently stored trap occurrences (existing entries in trpzTraplogTrapTable)." ::= { trpzTraplogMibObjects 4 } trpzTraplogVarEntry OBJECT-TYPE SYNTAX TrpzTraplogVarEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Trap Log Variable binding entry. Entries appear in this table when there are variables in the varbind list of a trap occurrence that is currently stored (has an entry in trpzTraplogTrapTable)." INDEX { trpzTraplogVarTrapIndex, trpzTraplogVarIndex } ::= { trpzTraplogVarTable 1 } TrpzTraplogVarEntry ::= SEQUENCE { trpzTraplogVarTrapIndex TrpzTraplogTrapOccurrenceIndex, trpzTraplogVarIndex Unsigned32, trpzTraplogVarID OBJECT IDENTIFIER, trpzTraplogVarValueType INTEGER, trpzTraplogVarCounter32Val Counter32, trpzTraplogVarUnsigned32Val Unsigned32, trpzTraplogVarTimeTicksVal TimeTicks, trpzTraplogVarInteger32Val Integer32, trpzTraplogVarOctetStringVal OCTET STRING, trpzTraplogVarIpAddressVal IpAddress, trpzTraplogVarOidVal OBJECT IDENTIFIER, trpzTraplogVarCounter64Val Counter64 } trpzTraplogVarTrapIndex OBJECT-TYPE SYNTAX TrpzTraplogTrapOccurrenceIndex MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index of a logged trap, see 'trpzTraplogTrapIndex' above." ::= { trpzTraplogVarEntry 1 } trpzTraplogVarIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "A monotonically increasing integer, starting at 1 for a given trpzTraplogTrapIndex, for indexing variables within the logged trap." ::= { trpzTraplogVarEntry 2 } trpzTraplogVarID OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS read-only STATUS current DESCRIPTION "The variable's object identifier." ::= { trpzTraplogVarEntry 3 } trpzTraplogVarValueType OBJECT-TYPE SYNTAX INTEGER { counter32 (1), unsigned32 (2), timeTicks (3), integer32 (4), ipAddress (5), octetString (6), objectId (7), counter64 (8) } MAX-ACCESS read-only STATUS current DESCRIPTION "The type of the value. One and only one of the value objects that follow must be instantiated, based on this type." ::= { trpzTraplogVarEntry 4 } trpzTraplogVarCounter32Val OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The value when trpzTraplogVarType is 'counter32'." ::= { trpzTraplogVarEntry 5 } trpzTraplogVarUnsigned32Val OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The value when trpzTraplogVarType is 'unsigned32'." ::= { trpzTraplogVarEntry 6 } trpzTraplogVarTimeTicksVal OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "The value when trpzTraplogVarType is 'timeTicks'." ::= { trpzTraplogVarEntry 7 } trpzTraplogVarInteger32Val OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The value when trpzTraplogVarType is 'integer32'." ::= { trpzTraplogVarEntry 8 } trpzTraplogVarOctetStringVal OBJECT-TYPE SYNTAX OCTET STRING MAX-ACCESS read-only STATUS current DESCRIPTION "The value when trpzTraplogVarType is 'octetString'." ::= { trpzTraplogVarEntry 9 } trpzTraplogVarIpAddressVal OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The value when trpzTraplogVarType is 'ipAddress'. This is an IPv4 format address, known as IpAddress. IPv6 addresses are represented using TAddress or InetAddress, and so the underlying datatype is OCTET STRING, and their value would be stored in the trpzTraplogVarOctetStringVal column." ::= { trpzTraplogVarEntry 10 } trpzTraplogVarOidVal OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS read-only STATUS current DESCRIPTION "The value when trpzTraplogVarType is 'objectId'." ::= { trpzTraplogVarEntry 11 } trpzTraplogVarCounter64Val OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "The value when trpzTraplogVarType is 'counter64'." ::= { trpzTraplogVarEntry 12 } -- ============================================================================ -- -- Conformance -- trpzTraplogConformance OBJECT IDENTIFIER ::= { trpzTraplogMib 2 } trpzTraplogCompliances OBJECT IDENTIFIER ::= { trpzTraplogConformance 1 } trpzTraplogGroups OBJECT IDENTIFIER ::= { trpzTraplogConformance 2 } -- Compliance trpzTraplogCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for devices that implement the Traplog MIB." MODULE -- trpzTraplogMib MANDATORY-GROUPS { trpzTraplogGuideGroup, trpzTraplogTrapGroup, trpzTraplogVarGroup } GROUP trpzTraplogGuideDateGroup DESCRIPTION "This group is mandatory on systems that keep wall clock date and time and should not be implemented on systems that do not have a wall clock date." GROUP trpzTraplogTrapDateGroup DESCRIPTION "This group is mandatory on systems that keep wall clock date and time and should not be implemented on systems that do not have a wall clock date." ::= { trpzTraplogCompliances 1 } -- Units of Conformance trpzTraplogGuideGroup OBJECT-GROUP OBJECTS { trpzTraplogOldestTrapIndex, trpzTraplogNewestTrapIndex, trpzTraplogNewestTrapTime } STATUS current DESCRIPTION "Mandatory group of global objects for managing the Trap Log." ::= { trpzTraplogGroups 1 } trpzTraplogGuideDateGroup OBJECT-GROUP OBJECTS { trpzTraplogNewestTrapDateAndTime } STATUS current DESCRIPTION "Conditionally mandatory global objects for managing the Trap Log. This group is mandatory on systems that keep wall clock date and time and should not be implemented on systems that do not have a wall clock date." ::= { trpzTraplogGroups 2 } trpzTraplogTrapGroup OBJECT-GROUP OBJECTS { trpzTraplogTrapTime, trpzTraplogTrapNotificationID, trpzTraplogTrapNumVars } STATUS current DESCRIPTION "Mandatory group of objects implemented to provide info on Trap occurrences." ::= { trpzTraplogGroups 3 } trpzTraplogTrapDateGroup OBJECT-GROUP OBJECTS { trpzTraplogTrapDateAndTime } STATUS current DESCRIPTION "Conditionally mandatory Trap occurrence info. This group is mandatory on systems that keep wall clock date and time and should not be implemented on systems that do not have a wall clock date." ::= { trpzTraplogGroups 4 } trpzTraplogVarGroup OBJECT-GROUP OBJECTS { trpzTraplogVarID, trpzTraplogVarValueType, trpzTraplogVarCounter32Val, trpzTraplogVarUnsigned32Val, trpzTraplogVarTimeTicksVal, trpzTraplogVarInteger32Val, trpzTraplogVarOctetStringVal, trpzTraplogVarIpAddressVal, trpzTraplogVarOidVal, trpzTraplogVarCounter64Val } STATUS current DESCRIPTION "Mandatory group of objects implemented to provide info on Variable bindings." ::= { trpzTraplogGroups 5 } END