-- ********************************************************************* -- CISCO-HC-ALARM-MIB.my: High Capacity Alarm RMON Mib -- -- October 2002, Vinay Gaonkar -- -- Copyright (c) 2002 by cisco Systems, Inc. -- All rights reserved. -- -- ********************************************************************* -- This MIB module is based on the Internet Draft -- . In terms of object syntax -- and semantics, the content of this Cisco MIB is the same as -- the corresponding Internet Draft revision. This Cisco MIB was -- created due to the "subject to change" nature of Internet Drafts. -- This Cisco MIB may later be deprecated, and the stable RFC, which -- may replace the Internet Draft, may be implemented in its place. CISCO-HC-ALARM-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, Integer32, Counter32, Unsigned32 FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF RowStatus, VariablePointer, StorageType, TEXTUAL-CONVENTION FROM SNMPv2-TC CounterBasedGauge64 FROM HCNUM-TC OwnerString, rmonEventGroup FROM RMON-MIB ciscoExperiment FROM CISCO-SMI; ciscoHcAlarmMIB MODULE-IDENTITY LAST-UPDATED "200210050000Z" ORGANIZATION "Cisco Systems, Inc." CONTACT-INFO " Cisco Systems Customer Service Postal: 170 W Tasman Drive San Jose, CA 95134 USA Tel: +1 800 553 -NETS E-mail: cs-san@cisco.com" DESCRIPTION "This module defines Remote Monitoring MIB extensions for High Capacity Alarms." REVISION "200210050000Z" DESCRIPTION "Initial version of the High Capacity Alarm MIB module. RFC Editor)." ::= { ciscoExperiment 93 } cHcAlarmObjects OBJECT IDENTIFIER ::= { ciscoHcAlarmMIB 1 } cHcAlarmNotifications OBJECT IDENTIFIER ::= { ciscoHcAlarmMIB 2 } cHcAlarmConformance OBJECT IDENTIFIER ::= { ciscoHcAlarmMIB 3 } cHcAlarmControlObjects OBJECT IDENTIFIER ::= { cHcAlarmObjects 1 } cHcAlarmCapabilitiesObjects OBJECT IDENTIFIER ::= { cHcAlarmObjects 2 } -- -- Textual Conventions -- CHcValueStatus ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "This data type indicates the validity and sign of the data in associated object instances which represent the absolute value of a high capacity numeric quantity. Such an object may be represented with one or more object instances. An object of type CHcValueStatus MUST be defined within the same structure as the object(s) representing the high capacity absolute value. If the associated object instance(s) representing the high capacity absolute value could not be accessed during the sampling interval, and is therefore invalid, then the associated CHcValueStatus object will contain the value 'valueNotAvailable(1)'. If the associated object instance(s) representing the high capacity absolute value are valid and actual value of the sample is greater than or equal to zero, then the associated CHcValueStatus object will contain the value 'valuePositive(2)'. If the associated object instance(s) representing the high capacity absolute value are valid and the actual value of the sample is less than zero, then the associated CHcValueStatus object will contain the value 'valueNegative(3)'. The associated absolute value should be multiplied by -1 to obtain the true sample value." SYNTAX INTEGER { valueNotAvailable(1), valuePositive(2), valueNegative(3) } -- -- High Capacity Alarm Table -- cHcAlarmTable OBJECT-TYPE SYNTAX SEQUENCE OF CHcAlarmEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A list of entries for the configuration of high capacity alarms." ::= { cHcAlarmControlObjects 1 } cHcAlarmEntry OBJECT-TYPE SYNTAX CHcAlarmEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A conceptual row in the cHcAlarmTable. Entries are usually created in this table by management application action, but may also be created by agent action as well." INDEX { cHcAlarmIndex } ::= { cHcAlarmTable 1 } CHcAlarmEntry ::= SEQUENCE { cHcAlarmIndex Integer32, cHcAlarmInterval Integer32, cHcAlarmVariable VariablePointer, cHcAlarmSampleType INTEGER, cHcAlarmAbsValue CounterBasedGauge64, cHcAlarmValueStatus CHcValueStatus, cHcAlarmStartupAlarm INTEGER, cHcAlarmRisingThreshAbsValueLo Unsigned32, cHcAlarmRisingThreshAbsValueHi Unsigned32, cHcAlarmRisingThresholdValStatus CHcValueStatus, cHcAlarmFallingThreshAbsValueLo Unsigned32, cHcAlarmFallingThreshAbsValueHi Unsigned32, cHcAlarmFallingThrsholdValStatus CHcValueStatus, cHcAlarmRisingEventIndex Integer32, cHcAlarmFallingEventIndex Integer32, cHcAlarmValueFailedAttempts Counter32, cHcAlarmOwner OwnerString, cHcAlarmStorageType StorageType, cHcAlarmStatus RowStatus } cHcAlarmIndex OBJECT-TYPE SYNTAX Integer32 (1..65535) MAX-ACCESS not-accessible STATUS current DESCRIPTION "An arbitrary integer index value used to uniquely identify this high capacity alarm entry." ::= { cHcAlarmEntry 1 } cHcAlarmInterval OBJECT-TYPE SYNTAX Integer32 (1..2147483647) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The interval in seconds over which the data is sampled and compared with the rising and falling thresholds. When setting this variable, care should be taken in the case of deltaValue sampling - the interval should be set short enough that the sampled variable is very unlikely to increase or decrease by more than 2^63 - 1 during a single sampling interval. This object may not be modified if the associated cHcAlarmStatus object is equal to active(1)." ::= { cHcAlarmEntry 2 } cHcAlarmVariable OBJECT-TYPE SYNTAX VariablePointer MAX-ACCESS read-create STATUS current DESCRIPTION "The object identifier of the particular variable to be sampled. Only variables that resolve to an ASN.1 primitive type of INTEGER (INTEGER, Integer32, Counter32, Counter64, Gauge, or TimeTicks) may be sampled. Because SNMP access control is articulated entirely in terms of the contents of MIB views, no access control mechanism exists that can restrict the value of this object to identify only those objects that exist in a particular MIB view. Because there is thus no acceptable means of restricting the read access that could be obtained through the alarm mechanism, the probe must only grant write access to this object in those views that have read access to all objects on the probe. This object may not be modified if the associated cHcAlarmStatus object is equal to active(1)." ::= { cHcAlarmEntry 3 } cHcAlarmSampleType OBJECT-TYPE SYNTAX INTEGER { absoluteValue(1), deltaValue(2) } MAX-ACCESS read-create STATUS current DESCRIPTION "The method of sampling the selected variable and calculating the value to be compared against the thresholds. If the value of this object is absoluteValue(1), the value of the selected variable will be compared directly with the thresholds at the end of the sampling interval. If the value of this object is deltaValue(2), the value of the selected variable at the last sample will be subtracted from the current value, and the difference compared with the thresholds. If the associated cHcAlarmVariable instance could not be obtained at the previous sample interval, then a delta sample is not possible, and the value of the associated cHcAlarmValueStatus object for this interval will be valueNotAvailable(1). This object may not be modified if the associated cHcAlarmStatus object is equal to active(1)." ::= { cHcAlarmEntry 4 } cHcAlarmAbsValue OBJECT-TYPE SYNTAX CounterBasedGauge64 MAX-ACCESS read-only STATUS current DESCRIPTION "The absolute value (i.e. unsigned value) of the cHcAlarmVariable statistic during the last sampling period. The value during the current sampling period is not made available until the period is completed. To obtain the true value for this sampling interval, the associated instance of cHcAlarmValueStatus must be checked, and the value of this object adjusted as necessary. If the MIB instance could not be accessed during the sampling interval, then this object will have a value of zero and the associated instance of cHcAlarmValueStatus will be set to 'valueNotAvailable(1)'." ::= { cHcAlarmEntry 5 } cHcAlarmValueStatus OBJECT-TYPE SYNTAX CHcValueStatus MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the validity and sign of the data for the cHcAlarmAbsValue object, as described in the CHcValueStatus textual convention." ::= { cHcAlarmEntry 6 } cHcAlarmStartupAlarm OBJECT-TYPE SYNTAX INTEGER { risingAlarm(1), fallingAlarm(2), risingOrFallingAlarm(3) } MAX-ACCESS read-create STATUS current DESCRIPTION "The alarm that may be sent when this entry is first set to active. If the first sample after this entry becomes active is greater than or equal to the rising threshold and this object is equal to risingAlarm(1) or risingOrFallingAlarm(3), then a single rising alarm will be generated. If the first sample after this entry becomes valid is less than or equal to the falling threshold and this object is equal to fallingAlarm(2) or risingOrFallingAlarm(3), then a single falling alarm will be generated. This object may not be modified if the associated cHcAlarmStatus object is equal to active(1)." ::= { cHcAlarmEntry 7 } cHcAlarmRisingThreshAbsValueLo OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "The lower 32 bits of the absolute value for threshold for the sampled statistic. The actual threshold value is determined by the associated instances of the cHcAlarmRisingThreshAbsValueHi and cHcAlarmRisingThresholdValStatus objects, as follows: ABS(threshold) = cHcAlarmRisingThreshAbsValueLo + (cHcAlarmRisingThreshAbsValueHi * 2^^32) The absolute value of the threshold is adjusted as required, as described in the CHcValueStatus textual convention. These three object instances are conceptually combined to represent the rising threshold for this entry. When the current sampled value is greater than or equal to this threshold, and the value at the last sampling interval was less than this threshold, a single event will be generated. A single event will also be generated if the first sample after this entry becomes valid is greater than or equal to this threshold and the associated cHcAlarmStartupAlarm is equal to risingAlarm(1) or risingOrFallingAlarm(3). After a rising event is generated, another such event will not be generated until the sampled value falls below this threshold and reaches the threshold identified by the cHcAlarmFallingThreshAbsValueLo, cHcAlarmFallingThreshAbsValueHi, and cHcAlarmFallingThrsholdValStatus objects. This object may not be modified if the associated cHcAlarmStatus object is equal to active(1)." ::= { cHcAlarmEntry 8 } cHcAlarmRisingThreshAbsValueHi OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "The upper 32 bits of the absolute value for threshold for the sampled statistic. The actual threshold value is determined by the associated instances of the cHcAlarmRisingThreshAbsValueLo and cHcAlarmRisingThresholdValStatus objects, as follows: ABS(threshold) = cHcAlarmRisingThreshAbsValueLo + (cHcAlarmRisingThreshAbsValueHi * 2^^32) The absolute value of the threshold is adjusted as required, as described in the CHcValueStatus textual convention. These three object instances are conceptually combined to represent the rising threshold for this entry. When the current sampled value is greater than or equal to this threshold, and the value at the last sampling interval was less than this threshold, a single event will be generated. A single event will also be generated if the first sample after this entry becomes valid is greater than or equal to this threshold and the associated cHcAlarmStartupAlarm is equal to risingAlarm(1) or risingOrFallingAlarm(3). After a rising event is generated, another such event will not be generated until the sampled value falls below this threshold and reaches the threshold identified by the cHcAlarmFallingThreshAbsValueLo, cHcAlarmFallingThreshAbsValueHi, and cHcAlarmFallingThrsholdValStatus objects. This object may not be modified if the associated cHcAlarmStatus object is equal to active(1)." ::= { cHcAlarmEntry 9 } cHcAlarmRisingThresholdValStatus OBJECT-TYPE SYNTAX CHcValueStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the sign of the data for the rising threshold, as defined by the cHcAlarmRisingThresAbsValueLo and cHcAlarmRisingThresAbsValueHi objects, as described in the CHcValueStatus textual convention. The enumeration 'valueNotAvailable(1)' is not allowed, and the associated cHcAlarmStatus object cannot be equal to 'active(1)' if this object is set to this value. This object may not be modified if the associated cHcAlarmStatus object is equal to active(1)." ::= { cHcAlarmEntry 10 } cHcAlarmFallingThreshAbsValueLo OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "The lower 32 bits of the absolute value for threshold for the sampled statistic. The actual threshold value is determined by the associated instances of the cHcAlarmFallingThreshAbsValueHi and cHcAlarmFallingThrsholdValStatus objects, as follows: ABS(threshold) = cHcAlarmFallingThreshAbsValueLo + (cHcAlarmFallingThreshAbsValueHi * 2^^32) The absolute value of the threshold is adjusted as required, as described in the CHcValueStatus textual convention. These three object instances are conceptually combined to represent the falling threshold for this entry. When the current sampled value is less than or equal to this threshold, and the value at the last sampling interval was greater than this threshold, a single event will be generated. A single event will also be generated if the first sample after this entry becomes valid is less than or equal to this threshold and the associated cHcAlarmStartupAlarm is equal to fallingAlarm(2) or risingOrFallingAlarm(3). After a falling event is generated, another such event will not be generated until the sampled value rises above this threshold and reaches the threshold identified by the cHcAlarmRisingThreshAbsValueLo, cHcAlarmRisingThreshAbsValueHi, and cHcAlarmRisingThresholdValStatus objects. This object may not be modified if the associated cHcAlarmStatus object is equal to active(1)." ::= { cHcAlarmEntry 11 } cHcAlarmFallingThreshAbsValueHi OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "The upper 32 bits of the absolute value for threshold for the sampled statistic. The actual threshold value is determined by the associated instances of the cHcAlarmFallingThreshAbsValueLo and cHcAlarmFallingThrsholdValStatus objects, as follows: ABS(threshold) = cHcAlarmFallingThreshAbsValueLo + (cHcAlarmFallingThreshAbsValueHi * 2^^32) The absolute value of the threshold is adjusted as required, as described in the CHcValueStatus textual convention. These three object instances are conceptually combined to represent the falling threshold for this entry. When the current sampled value is less than or equal to this threshold, and the value at the last sampling interval was greater than this threshold, a single event will be generated. A single event will also be generated if the first sample after this entry becomes valid is less than or equal to this threshold and the associated cHcAlarmStartupAlarm is equal to fallingAlarm(2) or risingOrFallingAlarm(3). After a falling event is generated, another such event will not be generated until the sampled value rises above this threshold and reaches the threshold identified by the cHcAlarmRisingThreshAbsValueLo, cHcAlarmRisingThreshAbsValueHi, and cHcAlarmRisingThresholdValStatus objects. This object may not be modified if the associated cHcAlarmStatus object is equal to active(1)." ::= { cHcAlarmEntry 12 } cHcAlarmFallingThrsholdValStatus OBJECT-TYPE SYNTAX CHcValueStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the sign of the data for the falling threshold, as defined by the cHcAlarmFallingThreshAbsValueLo and cHcAlarmFallingThreshAbsValueHi objects, as described in the CHcValueStatus textual convention. The enumeration 'valueNotAvailable(1)' is not allowed, and the associated cHcAlarmStatus object cannot be equal to 'active(1)' if this object is set to this value. This object may not be modified if the associated cHcAlarmStatus object is equal to active(1)." ::= { cHcAlarmEntry 13 } cHcAlarmRisingEventIndex OBJECT-TYPE SYNTAX Integer32 (0..65535) MAX-ACCESS read-create STATUS current DESCRIPTION "The index of the eventEntry that is used when a rising threshold is crossed. The eventEntry identified by a particular value of this index is the same as identified by the same value of the eventIndex object. If there is no corresponding entry in the eventTable, then no association exists. In particular, if this value is zero, no associated event will be generated, as zero is not a valid event index. This object may not be modified if the associated cHcAlarmStatus object is equal to active(1)." ::= { cHcAlarmEntry 14 } cHcAlarmFallingEventIndex OBJECT-TYPE SYNTAX Integer32 (0..65535) MAX-ACCESS read-create STATUS current DESCRIPTION "The index of the eventEntry that is used when a falling threshold is crossed. The eventEntry identified by a particular value of this index is the same as identified by the same value of the eventIndex object. If there is no corresponding entry in the eventTable, then no association exists. In particular, if this value is zero, no associated event will be generated, as zero is not a valid event index. This object may not be modified if the associated cHcAlarmStatus object is equal to active(1)." ::= { cHcAlarmEntry 15 } cHcAlarmValueFailedAttempts OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of times the associated cHcAlarmVariable instance was polled on behalf of this cHcAlarmEntry, (while in the active state) and the value was not available. This counter may experience a discontinuity if the agent restarts, indicated by the value of sysUpTime." ::= { cHcAlarmEntry 16 } cHcAlarmOwner OBJECT-TYPE SYNTAX OwnerString MAX-ACCESS read-create STATUS current DESCRIPTION "The entity that configured this entry and is therefore using the resources assigned to it." ::= { cHcAlarmEntry 17 } cHcAlarmStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "The type of non-volatile storage configured for this entry. If this object is equal to 'permanent(4)', then the associated cHcAlarmRisingEventIndex and cHcAlarmFallingEventIndex objects must be writable." ::= { cHcAlarmEntry 18 } cHcAlarmStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The status of this row. An entry MUST NOT exist in the active state unless all objects in the entry have an appropriate value, as described in the description clause for each writable object. The cHcAlarmStatus object may be modified if the associated instance of this object is equal to active(1), notInService(2), or notReady(3). All other writable objects may be modified if the associated instance of this object is equal to notInService(2) or notReady(3)." ::= { cHcAlarmEntry 19 } -- -- Capabilities -- cHcAlarmCapabilities OBJECT-TYPE SYNTAX BITS { cHcAlarmCreation(0), cHcAlarmNvStorage(1) } MAX-ACCESS read-only STATUS current DESCRIPTION "An indication of the high capacity alarm capabilities supported by this agent. If the 'cHcAlarmCreation' BIT is set, then this agent allows NMS applications to create entries in the cHcAlarmTable. If the 'cHcAlarmNvStorage' BIT is set, then this agent allows entries in the cHcAlarmTable which will be recreated after a system restart, as controlled by the cHcAlarmStorageType object." ::= { cHcAlarmCapabilitiesObjects 1 } -- -- Notifications -- cHcAlarmNotifPrefix OBJECT IDENTIFIER ::= { cHcAlarmNotifications 0 } cHcRisingAlarm NOTIFICATION-TYPE OBJECTS { cHcAlarmVariable, cHcAlarmSampleType, cHcAlarmAbsValue, cHcAlarmValueStatus, cHcAlarmRisingThreshAbsValueLo, cHcAlarmRisingThreshAbsValueHi, cHcAlarmRisingThresholdValStatus, cHcAlarmRisingEventIndex } STATUS current DESCRIPTION "The SNMP notification that is generated when a high capacity alarm entry crosses its rising threshold and generates an event that is configured for sending SNMP traps. The cHcAlarmEntry object instances identified in the OBJECTS clause are from the entry that causes this notification to be generated." ::= { cHcAlarmNotifPrefix 1 } cHcFallingAlarm NOTIFICATION-TYPE OBJECTS { cHcAlarmVariable, cHcAlarmSampleType, cHcAlarmAbsValue, cHcAlarmValueStatus, cHcAlarmFallingThreshAbsValueLo, cHcAlarmFallingThreshAbsValueHi, cHcAlarmFallingThrsholdValStatus, cHcAlarmFallingEventIndex } STATUS current DESCRIPTION "The SNMP notification that is generated when a high capacity alarm entry crosses its falling threshold and generates an event that is configured for sending SNMP traps. The cHcAlarmEntry object instances identified in the OBJECTS clause are from the entry that causes this notification to be generated." ::= { cHcAlarmNotifPrefix 2 } -- -- Conformance Section -- cHcAlarmCompliances OBJECT IDENTIFIER ::= { cHcAlarmConformance 1 } cHcAlarmGroups OBJECT IDENTIFIER ::= { cHcAlarmConformance 2 } cHcAlarmCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Describes the requirements for conformance to the High Capacity Alarm MIB." MODULE -- this module MANDATORY-GROUPS { cHcAlarmControlGroup, cHcAlarmCapabilitiesGroup, cHcAlarmNotificationsGroup } MODULE RMON-MIB MANDATORY-GROUPS { rmonEventGroup } ::= { cHcAlarmCompliances 1 } -- Object Groups cHcAlarmControlGroup OBJECT-GROUP OBJECTS { cHcAlarmInterval, cHcAlarmVariable, cHcAlarmSampleType, cHcAlarmAbsValue, cHcAlarmValueStatus, cHcAlarmStartupAlarm, cHcAlarmRisingThreshAbsValueLo, cHcAlarmRisingThreshAbsValueHi, cHcAlarmRisingThresholdValStatus, cHcAlarmFallingThreshAbsValueLo, cHcAlarmFallingThreshAbsValueHi, cHcAlarmFallingThrsholdValStatus, cHcAlarmRisingEventIndex, cHcAlarmFallingEventIndex, cHcAlarmValueFailedAttempts, cHcAlarmOwner, cHcAlarmStorageType, cHcAlarmStatus } STATUS current DESCRIPTION "A collection of objects used to configure entries for high capacity alarm threshold monitoring purposes." ::= { cHcAlarmGroups 1 } cHcAlarmCapabilitiesGroup OBJECT-GROUP OBJECTS { cHcAlarmCapabilities } STATUS current DESCRIPTION "A collection of objects used to indicate an agent's high capacity alarm threshold monitoring capabilities." ::= { cHcAlarmGroups 2 } cHcAlarmNotificationsGroup NOTIFICATION-GROUP NOTIFICATIONS { cHcRisingAlarm, cHcFallingAlarm } STATUS current DESCRIPTION "A collection of notifications to deliver information related to a high capacity rising or falling threshold event to a management application." ::= { cHcAlarmGroups 3 } END