NETI-EVENT-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, Unsigned32 FROM SNMPv2-SMI DisplayString, DateAndTime, TEXTUAL-CONVENTION, RowPointer, TruthValue FROM SNMPv2-TC SnmpAdminString FROM SNMP-FRAMEWORK-MIB OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF netiGeneric FROM NETI-COMMON-MIB; netiEventMIB MODULE-IDENTITY LAST-UPDATED "201105031000Z" ORGANIZATION "Net Insight AB" CONTACT-INFO "Net Insight AB Box 42093 SE-126 14 Stockholm Sweden Tel +46-8-685 0400 info@netinsight.se" DESCRIPTION "Mib containing event and alarm information. The mib implements two tables and some notifications. One table is holding events and one is holding alarms. The event table contains the events that are sent as SNMP notifications. These events indicate change of alarms, or change in other tables defined in other mibs, that uses the mechanism in this mib to notify a table change. If a notification receiver misses notifications, it can retrieve the lost notifications from this table. The alarm table holds all active alarms, and possibly also a number of the last cleared alarms. The active alarm table holds only the active alarms." REVISION "201105031000Z" DESCRIPTION "Added eventTrapPurpose." REVISION "200907091600Z" DESCRIPTION "- Added eventActiveAlarmTable. - In AlarmCause, dTEDCEInterfaceError relabled to dTEDCEInterfaceError to conform to SMIv2." REVISION "200703060000Z" DESCRIPTION "Added the following entries in the AlarmCause: replaceableUnitMissing(68), replaceableUnitProblem(69)." REVISION "200409100000Z" DESCRIPTION "Added the following entries in the AlarmCause: alarmIndicationSignal(66), remoteDefectIndication(67)." REVISION "200311250000Z" DESCRIPTION "Added the group eventAlarmCountersGroup with counters for the number of active alarms per serverity. Added eventConformanceGroups to comply with RFC2580." ::= { netiGeneric 1 } -- ------------------------------------------------------------- -- Objects in the NETI-EVENT-MIB -- ------------------------------------------------------------- eventObjects OBJECT IDENTIFIER ::= { netiEventMIB 1 } eventNotifications OBJECT IDENTIFIER ::= { netiEventMIB 2 } eventConformanceGroups OBJECT IDENTIFIER ::= { netiEventMIB 3 } -- ------------------------------------------------------------- -- Textual Conventions -- ------------------------------------------------------------- EventType ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The type of event. 'created', 'modified'and 'deleted' indicates status of a conceptual row in a table. If the event represents an alarm, the type is 'none'." SYNTAX INTEGER { none(0), created(1), modified(2), deleted(3) } AlarmType ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The alarm type as specified in CCITT Rec. X.733(1992 E)|ISO/EIC 10164-4:1992 (E). Alarm type 'unknown' may be set if the alarm type can not be determined, or when an event is not caused by an alarm." SYNTAX INTEGER { unknown(0), communication(1), qualityOfService(2), processingError(3), equipment(4), environmental(5) } AlarmSeverity ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The alarm severity as specified in CCITT Rec. X.733(1992 E)|ISO/EIC 10164-4:1992 (E). Alarm severity 'unknown' may be set if the alarm type can not be determined, or when the event is not caused by an alarm." SYNTAX INTEGER { unknown(0), indeterminate(1), critical(2), major(3), minor(4), warning(5), cleared(6) } AlarmCause ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The alarm cause 1-57 as specified in CCITT Rec. X.733(1992 E)|ISO/EIC 10164-4:1992 (E). Alarm casue 'unknown' may be set if the cause can not be determined, or if the event was not casued by an alarm. (0 and 58- are proprietary)." SYNTAX INTEGER { unknown(0), adapterError(1), applicationSubsystemFailure(2), bandwidthReduced(3), callEstablishmentError(4), communicationsProtocolError(5), communicationsSubsystemFailure(6), configurationOrCustomizationError(7), congestion(8), corruptData(9), cpuCyclesLimitExceeded(10), datasetOrModemError(11), degradedSignal(12), dTEDCEInterfaceError(13), enclosureDoorOpen(14), equipmentMalfunction(15), excessiveVibration(16), fileError(17), fireDetected(18), floodDetected(19), framingError(20), heatingOrVentilationOrCoolingSystemProblem(21), humidityUnacceptable(22), inputOutputDeviceError(23), inputDeviceError(24), lANError(25), leakDetected(26), localNodeTransmissionError(27), lossOfFrame(28), lossOfSignal(29), materialSupplyExhausted(30), multiplexerProblem(31), outOfMemory(32), outputDeviceError(33), performanceDegraded(34), powerProblem(35), pressureUnacceptable(36), processorProblem(37), pumpFailure(38), queueSizeExceeded(39), receiveFailure(40), receiverFailure(41), remoteNodeTransmissionError(42), resourceAtOrNearingCapacity(43), responseTimeExcessive(44), retransmissionRateExcessive(45), softwareError(46), softwareProgramAbnormallyTerminated(47), softwareProgramError(48), storageCapacityProblem(49), temperatureUnacceptable(50), thresholdCrossed(51), timingProblem(52), toxicLeakDetected(53), transmitFailure(54), transmitterFailure(55), underlyingResourceUnavailable(56), versionMismatch(57), phyLossOfSignal(58), -- use lossOfSignal instead phyLossOfFrame(59), -- use lossOfFrame instead phyAlarmIndicationSignal(60), -- use alarmIndicationSignal phyRemoteDefectIndication(61), -- use remoteDefectIndication instead phySignalFailure(62), -- currently not not used phySignalDegraded(63), -- use degradedSignal instead testmodeEntered(64), serviceUnavailable(65), alarmIndicationSignal(66), remoteDefectIndication(67), replaceableUnitMissing(68), -- 62 in rfc3877 replaceableUnitProblem(69) -- from rfc3877 } -- ------------------------------------------------------------- -- The Event objects -- ------------------------------------------------------------- -- Some scalars to examine status of the the event log. eventSequenceCounter OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The index of the latest sent event defined as notifications in this mib. By examine his object, the notification receiver can determine wheter it has missed any notifications. The counter resets to zero at cold start, indicating that no events has been sent, and that the event table is empty. The counter will wrap and restart at value '1' when it passes its maximum value" ::= { eventObjects 1 } eventLogLastChangedTime OBJECT-TYPE SYNTAX DateAndTime MAX-ACCESS read-only STATUS current DESCRIPTION "The time when an event was last changed, and a notification was sent." ::= { eventObjects 2 } -- The event table group contains a set of objects for -- getting the event list in the node. The event table -- contains all notifications that has been sent from the -- node using this mechanism. Events could either be -- alarms or notifications on changes in configuration -- tables. eventTable OBJECT-TYPE SYNTAX SEQUENCE OF EventEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Table containing the most recent events. The maximum size of the table depends on the implementation" ::= { eventObjects 3 } eventEntry OBJECT-TYPE SYNTAX EventEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "One entry in the table holds one event. Events are either created by the agent when a conceptual row has been changed in a table defined in another mib, or when an alarm status is changed in the alarm table defined in this mib." INDEX { eventIndex } ::= { eventTable 1 } EventEntry ::= SEQUENCE { eventIndex Unsigned32, eventObject RowPointer, eventObjectName DisplayString, eventAlarmType AlarmType, eventType EventType, eventCause AlarmCause, eventSeverity AlarmSeverity, eventText DisplayString, eventCreatedTime DateAndTime } eventIndex OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Arbitrary index for an entry in the event table. The eventIndex follows the eventSequenceCounter as such that the eventSequenceCounter refers to the last event in the table" ::= { eventEntry 1 } eventObject OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-only STATUS current DESCRIPTION "A pointer to the conceptual row of the object that caused this event. The value is the name of the instance of the first accessible columnar object in the conceptual row. For example, dtmIfIndex.3 would point to the 3rd row in the dtmIfTable. If the object is unavailable, the value is { 0 0 }." ::= { eventEntry 2 } eventObjectName OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "A text describing the object that caused the event in a for humans more readable form. If not set then this object contains a zero-length string." ::= { eventEntry 3 } eventAlarmType OBJECT-TYPE SYNTAX AlarmType MAX-ACCESS read-only STATUS current DESCRIPTION "This is the event type as specified in AlarmType." ::= { eventEntry 4 } eventType OBJECT-TYPE SYNTAX EventType MAX-ACCESS read-only STATUS current DESCRIPTION "This is the event type as specified in EventType." ::= { eventEntry 5 } eventCause OBJECT-TYPE SYNTAX AlarmCause MAX-ACCESS read-only STATUS current DESCRIPTION "The alarm cause as specified in AlarmCause." ::= { eventEntry 6 } eventSeverity OBJECT-TYPE SYNTAX AlarmSeverity MAX-ACCESS read-only STATUS current DESCRIPTION "The alarm severity as specified in AlarmSeverity." ::= { eventEntry 7 } eventText OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "A text describing the event in a for humans more readable form." ::= { eventEntry 8 } eventCreatedTime OBJECT-TYPE SYNTAX DateAndTime MAX-ACCESS read-only STATUS current DESCRIPTION "The time when the event was created." ::= { eventEntry 9 } -- The Alarm table contains all active and some cleared alarms -- in the node. eventAlarmTable OBJECT-TYPE SYNTAX SEQUENCE OF EventAlarmEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Table containing alarms and their status. The maximum size of the table depends on the implementaion." ::= { eventObjects 4 } eventAlarmEntry OBJECT-TYPE SYNTAX EventAlarmEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "One entry in the table holds one alarm. The table contains all active alarms, and depending on the implementation, it may contian none, some or all cleared alarms." INDEX { eventAlarmIndex } ::= { eventAlarmTable 1 } EventAlarmEntry ::= SEQUENCE { eventAlarmIndex Unsigned32, eventAlarmObject RowPointer, eventAlarmObjectName DisplayString, eventAlarmAlarmType AlarmType, eventAlarmCause AlarmCause, eventAlarmSeverity AlarmSeverity, eventAlarmText DisplayString, eventAlarmLastChangedTime DateAndTime, eventAlarmAcknowledged TruthValue, eventAlarmCreatedTime DateAndTime } eventAlarmIndex OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Arbitrary index for an entry in the alarm table." ::= { eventAlarmEntry 1 } eventAlarmObject OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-only STATUS current DESCRIPTION "A pointer to the conceptual row of the object that caused this alarm. The value is the name of the instance of the first accessible columnar object in the conceptual row. For example, dtmIfIndex.3 would point to the 3rd row in the dtmIfTable. If the object is unavailable, the value is { 0 0 }." ::= { eventAlarmEntry 2 } eventAlarmObjectName OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "A text describing the object in a more readable form. If not set then this object contains a zero-length string." ::= { eventAlarmEntry 3 } eventAlarmAlarmType OBJECT-TYPE SYNTAX AlarmType MAX-ACCESS read-only STATUS current DESCRIPTION "The alarm type as specified in AlarmType." ::= { eventAlarmEntry 4 } eventAlarmCause OBJECT-TYPE SYNTAX AlarmCause MAX-ACCESS read-only STATUS current DESCRIPTION "The alarm cause as specified in AlarmCause." ::= { eventAlarmEntry 5 } eventAlarmSeverity OBJECT-TYPE SYNTAX AlarmSeverity MAX-ACCESS read-only STATUS current DESCRIPTION "The alarm severity as specified in AlarmSeverity." ::= { eventAlarmEntry 6 } eventAlarmText OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "A text describing the alarm in a more readable form." ::= { eventAlarmEntry 7 } eventAlarmLastChangedTime OBJECT-TYPE SYNTAX DateAndTime MAX-ACCESS read-only STATUS current DESCRIPTION "The time when the alarm was changed, i.e. when the alarm was created, or 'eventAlarmSeverity' or 'eventAlarmAcknowledged' was changed." ::= { eventAlarmEntry 8 } eventAlarmAcknowledged OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "The acknowledgement status of the alarm. This is set to 'true' to indicate that the alarm is is acknowledged, and set to 'false' to clear the acknowledge." ::= { eventAlarmEntry 9 } eventAlarmCreatedTime OBJECT-TYPE SYNTAX DateAndTime MAX-ACCESS read-only STATUS current DESCRIPTION "The time when the alarm was created." ::= { eventAlarmEntry 10 } -- The Alarm table contains all active alarms in the node. eventActiveAlarmTable OBJECT-TYPE SYNTAX SEQUENCE OF EventActiveAlarmEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Table containing alarms and their status. The maximum size of the table depends on the implementaion." ::= { eventObjects 6 } eventActiveAlarmEntry OBJECT-TYPE SYNTAX EventActiveAlarmEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "One entry in the table holds one alarm. The table contains only active alarms." INDEX { eventActiveAlarmIndex } ::= { eventActiveAlarmTable 1 } EventActiveAlarmEntry ::= SEQUENCE { eventActiveAlarmIndex Unsigned32, eventActiveAlarmObject RowPointer, eventActiveAlarmObjectName DisplayString, eventActiveAlarmAlarmType AlarmType, eventActiveAlarmCause AlarmCause, eventActiveAlarmSeverity AlarmSeverity, eventActiveAlarmText DisplayString, eventActiveAlarmLastChangedTime DateAndTime, eventActiveAlarmAcknowledged TruthValue, eventActiveAlarmCreatedTime DateAndTime } eventActiveAlarmIndex OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Arbitrary index for an entry in the alarm table." ::= { eventActiveAlarmEntry 1 } eventActiveAlarmObject OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-only STATUS current DESCRIPTION "A pointer to the conceptual row of the object that caused this alarm. The value is the name of the instance of the first accessible columnar object in the conceptual row. For example, dtmIfIndex.3 would point to the 3rd row in the dtmIfTable. If the object is unavailable, the value is { 0 0 }." ::= { eventActiveAlarmEntry 2 } eventActiveAlarmObjectName OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "A text describing the object in a more readable form. If not set then this object contains a zero-length string." ::= { eventActiveAlarmEntry 3 } eventActiveAlarmAlarmType OBJECT-TYPE SYNTAX AlarmType MAX-ACCESS read-only STATUS current DESCRIPTION "The alarm type as specified in AlarmType." ::= { eventActiveAlarmEntry 4 } eventActiveAlarmCause OBJECT-TYPE SYNTAX AlarmCause MAX-ACCESS read-only STATUS current DESCRIPTION "The alarm cause as specified in AlarmCause." ::= { eventActiveAlarmEntry 5 } eventActiveAlarmSeverity OBJECT-TYPE SYNTAX AlarmSeverity MAX-ACCESS read-only STATUS current DESCRIPTION "The alarm severity as specified in AlarmSeverity." ::= { eventActiveAlarmEntry 6 } eventActiveAlarmText OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "A text describing the alarm in a more readable form." ::= { eventActiveAlarmEntry 7 } eventActiveAlarmLastChangedTime OBJECT-TYPE SYNTAX DateAndTime MAX-ACCESS read-only STATUS current DESCRIPTION "The time when the alarm was changed, i.e. when the alarm was created, or 'eventActiveAlarmSeverity' or 'eventActiveAlarmAcknowledged' was changed." ::= { eventActiveAlarmEntry 8 } eventActiveAlarmAcknowledged OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "The acknowledgement status of the alarm. This is set to 'true' to indicate that the alarm is is acknowledged, and set to 'false' to clear the acknowledge." ::= { eventActiveAlarmEntry 9 } eventActiveAlarmCreatedTime OBJECT-TYPE SYNTAX DateAndTime MAX-ACCESS read-only STATUS current DESCRIPTION "The time when the alarm was created." ::= { eventActiveAlarmEntry 10 } -- ------------------------------------------------------------- -- Group with alarm counters -- ------------------------------------------------------------- -- The group contains counters per alarm severity. The counters -- holds the number of active alarms per severiy. eventAlarmCountersGroup OBJECT IDENTIFIER ::= { eventObjects 5 } eventCriticalCounter OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of active alarms with the serverity 'critical'." ::= { eventAlarmCountersGroup 1 } eventMajorCounter OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of active alarms with the serverity 'major'." ::= { eventAlarmCountersGroup 2 } eventMinorCounter OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of active alarms with the serverity 'minor'." ::= { eventAlarmCountersGroup 3 } eventWarningCounter OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of active alarms with the serverity 'warning'." ::= { eventAlarmCountersGroup 4 } eventIndeterminateCounter OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of active alarms with the serverity 'indeterminate'." ::= { eventAlarmCountersGroup 5 } -- ------------------------------------------------------------- -- Alarm related notifications -- ------------------------------------------------------------- eventNotificationObjectsGroup OBJECT IDENTIFIER ::= { eventObjects 7 } eventTrapPurpose OBJECT-TYPE SYNTAX SnmpAdminString MAX-ACCESS accessible-for-notify STATUS current DESCRIPTION "Indicates the purpose of a managed object to where a trap belongs. This OID may be appended to traps in the eventNotifications group at the discretion of the SNMP agent." ::= { eventNotificationObjectsGroup 1 } -- Notifications are sent when the state of an alarm is -- changed. Each severity has its own trap since many -- SNMP managers organize severity of events based on the -- trap identity. -- The management application should use alarmObjectName -- and alarmCause (or alarmObject if given) it it wishes -- to keep track of a certain fault state. -- The standard traps (cold start etc.) should be used -- to trigger re-reading the alarm list if the node crashes -- or the alarm list is reset for some reason. eventAlarmCritical NOTIFICATION-TYPE OBJECTS { eventIndex, eventObject, eventObjectName, eventAlarmType, eventCause, eventSeverity, eventText, eventCreatedTime, eventSequenceCounter } STATUS current DESCRIPTION "Notification for an alarm with severity 'critical'." ::= { eventNotifications 1 } eventAlarmMajor NOTIFICATION-TYPE OBJECTS { eventIndex, eventObject, eventObjectName, eventAlarmType, eventCause, eventSeverity, eventText, eventCreatedTime, eventSequenceCounter } STATUS current DESCRIPTION "Notification for an alarm with severity 'major'." ::= { eventNotifications 2 } eventAlarmMinor NOTIFICATION-TYPE OBJECTS { eventIndex, eventObject, eventObjectName, eventAlarmType, eventCause, eventSeverity, eventText, eventCreatedTime, eventSequenceCounter } STATUS current DESCRIPTION "Notification for an alarm with severity 'minor'." ::= { eventNotifications 3 } eventAlarmWarning NOTIFICATION-TYPE OBJECTS { eventIndex, eventObject, eventObjectName, eventAlarmType, eventCause, eventSeverity, eventText, eventCreatedTime, eventSequenceCounter } STATUS current DESCRIPTION "Notification for an alarm with severity 'warning'." ::= { eventNotifications 4 } eventAlarmIndeterminate NOTIFICATION-TYPE OBJECTS { eventIndex, eventObject, eventObjectName, eventAlarmType, eventCause, eventSeverity, eventText, eventCreatedTime, eventSequenceCounter } STATUS current DESCRIPTION "Notification for an alarm with severity 'indeterminate'." ::= { eventNotifications 5 } eventAlarmUnknown NOTIFICATION-TYPE OBJECTS { eventIndex, eventObject, eventObjectName, eventAlarmType, eventCause, eventSeverity, eventText, eventCreatedTime, eventSequenceCounter } STATUS current DESCRIPTION "Notification for an alarm with unknown severity." ::= { eventNotifications 6 } eventAlarmClear NOTIFICATION-TYPE OBJECTS { eventIndex, eventObject, eventObjectName, eventAlarmType, eventCause, eventSeverity, eventText, eventCreatedTime, eventSequenceCounter } STATUS current DESCRIPTION "Notification for a cleared alarm." ::= { eventNotifications 7 } -- Notifications are sent when a configuration change has occured -- in the node. The type of configuration can be 'create', 'modify' -- or 'delete', i.e. a conceptual row is created, modified or -- deleted in the a table referred to by 'eventObject'. netiGenericEvent NOTIFICATION-TYPE OBJECTS { eventObject, eventObjectName, eventType, eventText, eventCreatedTime, eventSequenceCounter } STATUS current DESCRIPTION "Notification for a generic event." ::= { eventNotifications 8 } -- ------------------------------------------------------------- -- Conformance Groups -- ------------------------------------------------------------- eventConformanceGroup OBJECT-GROUP OBJECTS { eventSequenceCounter, eventLogLastChangedTime, eventIndex, eventObject, eventObjectName, eventAlarmType, eventType, eventCause, eventSeverity, eventText, eventCreatedTime, eventAlarmIndex, eventAlarmObject, eventAlarmObjectName, eventAlarmAlarmType, eventAlarmCause, eventAlarmSeverity, eventAlarmText, eventAlarmLastChangedTime, eventAlarmAcknowledged, eventAlarmCreatedTime, eventActiveAlarmIndex, eventActiveAlarmObject, eventActiveAlarmObjectName, eventActiveAlarmAlarmType, eventActiveAlarmCause, eventActiveAlarmSeverity, eventActiveAlarmText, eventActiveAlarmLastChangedTime, eventActiveAlarmAcknowledged, eventActiveAlarmCreatedTime, eventCriticalCounter, eventMajorCounter, eventMinorCounter, eventWarningCounter, eventIndeterminateCounter } STATUS current DESCRIPTION "A collection of objects providing event and alarm functionality." ::= { eventConformanceGroups 1 } eventNotificationsGroup NOTIFICATION-GROUP NOTIFICATIONS { eventAlarmCritical, eventAlarmMajor, eventAlarmMinor, eventAlarmWarning, eventAlarmIndeterminate, eventAlarmUnknown, eventAlarmClear, netiGenericEvent } STATUS current DESCRIPTION "A collection of notifications for alarms and events." ::= { eventConformanceGroups 2 } END