module ietf-alarms-x733 { yang-version 1.1; namespace "urn:ietf:params:xml:ns:yang:ietf-alarms-x733"; prefix x733; import ietf-alarms { prefix al; } organization "IETF CCAMP Working Group"; contact "WG Web: WG List: Editor: Stefan Vallin Editor: Martin Bjorklund "; description "This module augments the ietf-alarms module with X.733 mapping information. The following structures are augmented with event type and probable cause: 1) alarm inventory: all possible alarms. 2) alarm: every alarm in the system. 3) alarm notification: notifications indicating alarm state changes. The module also optionally allows the alarm management system to configure the mapping. The mapping does not include a a corresponding specific problem value. The recommendation is to use alarm-type-qualifier which serves the same purpose."; reference "ITU Recommendation X.733: Information Technology - Open Systems Interconnection - System Management: Alarm Reporting Function"; revision 2017-10-30 { description "Initial revision."; reference "RFC XXXX: YANG Alarm Module"; } /* * Features */ feature configure-x733-mapping { description "The system supports configurable X733 mapping from alarm type to event type and probable cause."; } /* * Typedefs */ typedef event-type { type enumeration { enum other { value 1; description "None of the below."; } enum communications-alarm { value 2; description "An alarm of this type is principally associated with the procedures and/or processes required to convey information from one point to another."; reference "ITU Recommendation X.733: Information Technology - Open Systems Interconnection - System Management: Alarm Reporting Function"; } enum quality-of-service-alarm { value 3; description "An alarm of this type is principally associated with a degradation in the quality of a service."; reference "ITU Recommendation X.733: Information Technology - Open Systems Interconnection - System Management: Alarm Reporting Function"; } enum processing-error-alarm { value 4; description "An alarm of this type is principally associated with a software or processing fault."; reference "ITU Recommendation X.733: Information Technology - Open Systems Interconnection - System Management: Alarm Reporting Function"; } enum equipment-alarm { value 5; description "An alarm of this type is principally associated with an equipment fault."; reference "ITU Recommendation X.733: Information Technology - Open Systems Interconnection - System Management: Alarm Reporting Function"; } enum environmental-alarm { value 6; description "An alarm of this type is principally associated with a condition relating to an enclosure in which the equipment resides."; reference "ITU Recommendation X.733: Information Technology - Open Systems Interconnection - System Management: Alarm Reporting Function"; } enum integrity-violation { value 7; description "An indication that information may have been illegally modified, inserted or deleted."; reference "ITU Recommendation X.736: Information Technology - Open Systems Interconnection - System Management: Security Alarm Reporting Function"; } enum operational-violation { value 8; description "An indication that the provision of the requested service was not possible due to the unavailability, malfunction or incorrect invocation of the service."; reference "ITU Recommendation X.736: Information Technology - Open Systems Interconnection - System Management: Security Alarm Reporting Function"; } enum physical-violation { value 9; description "An indication that a physical resource has been violated in a way that suggests a security attack."; reference "ITU Recommendation X.736: Information Technology - Open Systems Interconnection - System Management: Security Alarm Reporting Function"; } enum security-service-or-mechanism-violation { value 10; description "An indication that a security attack has been detected by a security service or mechanism."; reference "ITU Recommendation X.736: Information Technology - Open Systems Interconnection - System Management: Security Alarm Reporting Function"; } enum time-domain-violation { value 11; description "An indication that an event has occurred at an unexpected or prohibited time."; reference "ITU Recommendation X.736: Information Technology - Open Systems Interconnection - System Management: Security Alarm Reporting Function"; } } description "The event types as defined by X.733 and X.736. The use of the term 'event' is a bit confusing. In an alarm context these are top level alarm types."; } /* * Groupings */ grouping x733-alarm-parameters { description "Common X.733 parameters for alarms."; leaf event-type { type event-type; description "The X.733/X.736 event type for this alarm."; } leaf probable-cause { type uint32; description "The X.733 probable cause for this alarm."; } } grouping x733-alarm-definition-parameters { description "Common X.733 parameters for alarm definitions."; leaf event-type { type event-type; description "The alarm type has this X.733/X.736 event type."; } leaf probable-cause { type uint32; description "The alarm type has this X.733 probable cause value. This module defines probable cause as an integer and not as an enumeration. The reason being that the primary use of probable cause is in the management application if it is based on the X.733 standard. However, most management applications have their own defined enum definitions and merging enums from different systems might create conflicts. By using a configurable uint32 the system can be configured to match the enum values in the manager."; } } /* * Add X.733 parameters to the alarm definitions, alarms, * and notification. */ augment "/al:alarms/al:alarm-inventory/al:alarm-type" { description "Augment X.733 mapping information to the alarm inventory."; uses x733-alarm-definition-parameters; } augment "/al:alarms/al:control" { description "Add X.733 mapping capabilities. "; list x733-mapping { if-feature configure-x733-mapping; key "alarm-type-id alarm-type-qualifier-match"; description "This list allows a management application to control the X.733 mapping for all alarm types in the system. Any entry in this list will allow the alarm manager to over-ride the default X.733 mapping in the system and the final mapping will be shown in the alarm-inventory"; leaf alarm-type-id { type al:alarm-type-id; description "Map the alarm type with this alarm type identifier."; } leaf alarm-type-qualifier-match { type string; description "A W3C regular expression that is used when mapping an alarm type and alarm-type-qualifier to X.733 parameters."; } uses x733-alarm-definition-parameters; } } augment "/al:alarms/al:alarm-list/al:alarm" { description "Augment X.733 information to the alarm."; uses x733-alarm-parameters; } augment "/al:alarms/al:shelved-alarms/al:shelved-alarm" { description "Augment X.733 information to the alarm."; uses x733-alarm-parameters; } augment "/al:alarm-notification" { description "Augment X.733 information to the alarm notification."; uses x733-alarm-parameters; } }