NTWS-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 ntwsMibs FROM NTWS-ROOT-MIB; ntwsTraplogMib MODULE-IDENTITY LAST-UPDATED "200903220009Z" ORGANIZATION "Nortel Networks" CONTACT-INFO "www.nortelnetworks.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 Nortel Networks. All rights reserved. This Nortel Networks SNMP Management Information Base Specification (Specification) embodies Nortel Networks' confidential and proprietary intellectual property. This Specification is supplied 'AS IS' and Nortel 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" ::= { ntwsMibs 13 } -- Textual conventions NtwsTraplogTrapOccurrenceIndex ::= 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) NtwsTraplogTrapOccurrenceIndexOrZero ::= TEXTUAL-CONVENTION DISPLAY-HINT "d" STATUS current DESCRIPTION "This textual convention is an extension of the NtwsTraplogTrapOccurrenceIndex 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 -- ntwsTraplogMibObjects OBJECT IDENTIFIER ::= { ntwsTraplogMib 1 } -- Reserved for future scalar objects (high-level status/control of Trap Log): -- ntwsTraplogGlobalObjects OBJECT IDENTIFIER ::= { ntwsTraplogMibObjects 1 } ntwsTraplogGuideObjects OBJECT IDENTIFIER ::= { ntwsTraplogMibObjects 2 } -- Object definitions -- ======================================== -- Global objects for managing the Trap Log -- -- Read-only scalar objects -- ntwsTraplogOldestTrapIndex OBJECT-TYPE SYNTAX NtwsTraplogTrapOccurrenceIndexOrZero 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)." ::= { ntwsTraplogGuideObjects 1 } ntwsTraplogNewestTrapIndex OBJECT-TYPE SYNTAX NtwsTraplogTrapOccurrenceIndexOrZero 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)." ::= { ntwsTraplogGuideObjects 2 } ntwsTraplogNewestTrapTime 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 ntwsTraplogTrapTime for the latest entry in ntwsTraplogTrapTable, _if_ these objects were read at exactly same time." ::= { ntwsTraplogGuideObjects 3 } ntwsTraplogNewestTrapDateAndTime 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 ntwsTraplogTrapDateAndTime for the latest entry in ntwsTraplogTrapTable, _if_ these objects were read at exactly same time." DEFVAL { '0000000000000000'H } ::= { ntwsTraplogGuideObjects 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). -- ntwsTraplogTrapTable OBJECT-TYPE SYNTAX SEQUENCE OF NtwsTraplogTrapEntry 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 ntwsTraplogOldestTrapIndex and the index of the youngest entry is specified by ntwsTraplogNewestTrapIndex. 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 ntwsTraplogTrapTime for entries made before the reset MUST be set to 0." ::= { ntwsTraplogMibObjects 3 } ntwsTraplogTrapEntry OBJECT-TYPE SYNTAX NtwsTraplogTrapEntry 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 { ntwsTraplogTrapIndex } ::= { ntwsTraplogTrapTable 1 } NtwsTraplogTrapEntry ::= SEQUENCE { ntwsTraplogTrapIndex NtwsTraplogTrapOccurrenceIndex, ntwsTraplogTrapTime TimeStamp, ntwsTraplogTrapDateAndTime DateAndTime, ntwsTraplogTrapNotificationID OBJECT IDENTIFIER, ntwsTraplogTrapNumVars Unsigned32 } ntwsTraplogTrapIndex OBJECT-TYPE SYNTAX NtwsTraplogTrapOccurrenceIndex 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." ::= { ntwsTraplogTrapEntry 1 } ntwsTraplogTrapTime 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." ::= { ntwsTraplogTrapEntry 2 } ntwsTraplogTrapDateAndTime 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." ::= { ntwsTraplogTrapEntry 3 } ntwsTraplogTrapNotificationID OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS read-only STATUS current DESCRIPTION "The NOTIFICATION-TYPE object identifier of the Notification that occurred." ::= { ntwsTraplogTrapEntry 4 } ntwsTraplogTrapNumVars OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) MAX-ACCESS read-only STATUS current DESCRIPTION "The Number of Variable bindings that should have been logged (in ntwsTraplogVarTable) for this trap occurrence." ::= { ntwsTraplogTrapEntry 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). -- ntwsTraplogVarTable OBJECT-TYPE SYNTAX SEQUENCE OF NtwsTraplogVarEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Trap Log detail table: Variable bindings for the currently stored trap occurrences (existing entries in ntwsTraplogTrapTable)." ::= { ntwsTraplogMibObjects 4 } ntwsTraplogVarEntry OBJECT-TYPE SYNTAX NtwsTraplogVarEntry 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 ntwsTraplogTrapTable)." INDEX { ntwsTraplogVarTrapIndex, ntwsTraplogVarIndex } ::= { ntwsTraplogVarTable 1 } NtwsTraplogVarEntry ::= SEQUENCE { ntwsTraplogVarTrapIndex NtwsTraplogTrapOccurrenceIndex, ntwsTraplogVarIndex Unsigned32, ntwsTraplogVarID OBJECT IDENTIFIER, ntwsTraplogVarValueType INTEGER, ntwsTraplogVarCounter32Val Counter32, ntwsTraplogVarUnsigned32Val Unsigned32, ntwsTraplogVarTimeTicksVal TimeTicks, ntwsTraplogVarInteger32Val Integer32, ntwsTraplogVarOctetStringVal OCTET STRING, ntwsTraplogVarIpAddressVal IpAddress, ntwsTraplogVarOidVal OBJECT IDENTIFIER, ntwsTraplogVarCounter64Val Counter64 } ntwsTraplogVarTrapIndex OBJECT-TYPE SYNTAX NtwsTraplogTrapOccurrenceIndex MAX-ACCESS not-accessible STATUS current DESCRIPTION "The index of a logged trap, see 'ntwsTraplogTrapIndex' above." ::= { ntwsTraplogVarEntry 1 } ntwsTraplogVarIndex OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "A monotonically increasing integer, starting at 1 for a given ntwsTraplogTrapIndex, for indexing variables within the logged trap." ::= { ntwsTraplogVarEntry 2 } ntwsTraplogVarID OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS read-only STATUS current DESCRIPTION "The variable's object identifier." ::= { ntwsTraplogVarEntry 3 } ntwsTraplogVarValueType 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." ::= { ntwsTraplogVarEntry 4 } ntwsTraplogVarCounter32Val OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The value when ntwsTraplogVarType is 'counter32'." ::= { ntwsTraplogVarEntry 5 } ntwsTraplogVarUnsigned32Val OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The value when ntwsTraplogVarType is 'unsigned32'." ::= { ntwsTraplogVarEntry 6 } ntwsTraplogVarTimeTicksVal OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "The value when ntwsTraplogVarType is 'timeTicks'." ::= { ntwsTraplogVarEntry 7 } ntwsTraplogVarInteger32Val OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "The value when ntwsTraplogVarType is 'integer32'." ::= { ntwsTraplogVarEntry 8 } ntwsTraplogVarOctetStringVal OBJECT-TYPE SYNTAX OCTET STRING MAX-ACCESS read-only STATUS current DESCRIPTION "The value when ntwsTraplogVarType is 'octetString'." ::= { ntwsTraplogVarEntry 9 } ntwsTraplogVarIpAddressVal OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The value when ntwsTraplogVarType 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 ntwsTraplogVarOctetStringVal column." ::= { ntwsTraplogVarEntry 10 } ntwsTraplogVarOidVal OBJECT-TYPE SYNTAX OBJECT IDENTIFIER MAX-ACCESS read-only STATUS current DESCRIPTION "The value when ntwsTraplogVarType is 'objectId'." ::= { ntwsTraplogVarEntry 11 } ntwsTraplogVarCounter64Val OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "The value when ntwsTraplogVarType is 'counter64'." ::= { ntwsTraplogVarEntry 12 } -- ============================================================================ -- -- Conformance -- ntwsTraplogConformance OBJECT IDENTIFIER ::= { ntwsTraplogMib 2 } ntwsTraplogCompliances OBJECT IDENTIFIER ::= { ntwsTraplogConformance 1 } ntwsTraplogGroups OBJECT IDENTIFIER ::= { ntwsTraplogConformance 2 } -- Compliance ntwsTraplogCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for devices that implement the Traplog MIB." MODULE -- ntwsTraplogMib MANDATORY-GROUPS { ntwsTraplogGuideGroup, ntwsTraplogTrapGroup, ntwsTraplogVarGroup } GROUP ntwsTraplogGuideDateGroup 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 ntwsTraplogTrapDateGroup 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." ::= { ntwsTraplogCompliances 1 } -- Units of Conformance ntwsTraplogGuideGroup OBJECT-GROUP OBJECTS { ntwsTraplogOldestTrapIndex, ntwsTraplogNewestTrapIndex, ntwsTraplogNewestTrapTime } STATUS current DESCRIPTION "Mandatory group of global objects for managing the Trap Log." ::= { ntwsTraplogGroups 1 } ntwsTraplogGuideDateGroup OBJECT-GROUP OBJECTS { ntwsTraplogNewestTrapDateAndTime } 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." ::= { ntwsTraplogGroups 2 } ntwsTraplogTrapGroup OBJECT-GROUP OBJECTS { ntwsTraplogTrapTime, ntwsTraplogTrapNotificationID, ntwsTraplogTrapNumVars } STATUS current DESCRIPTION "Mandatory group of objects implemented to provide info on Trap occurrences." ::= { ntwsTraplogGroups 3 } ntwsTraplogTrapDateGroup OBJECT-GROUP OBJECTS { ntwsTraplogTrapDateAndTime } 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." ::= { ntwsTraplogGroups 4 } ntwsTraplogVarGroup OBJECT-GROUP OBJECTS { ntwsTraplogVarID, ntwsTraplogVarValueType, ntwsTraplogVarCounter32Val, ntwsTraplogVarUnsigned32Val, ntwsTraplogVarTimeTicksVal, ntwsTraplogVarInteger32Val, ntwsTraplogVarOctetStringVal, ntwsTraplogVarIpAddressVal, ntwsTraplogVarOidVal, ntwsTraplogVarCounter64Val } STATUS current DESCRIPTION "Mandatory group of objects implemented to provide info on Variable bindings." ::= { ntwsTraplogGroups 5 } END