1 module ietf-alarms-x733 {
3 namespace "urn:ietf:params:xml:ns:yang:ietf-alarms-x733";
9 import ietf-yang-types {
12 "RFC 6991: Common YANG Data Types";
16 "IETF CCAMP Working Group";
18 "WG Web: <https://trac.ietf.org/trac/ccamp>
19 WG List: <mailto:ccamp@ietf.org>
22 <mailto:stefan@wallan.se>
24 Editor: Martin Bjorklund
25 <mailto:mbj@tail-f.com>";
27 "This module augments the ietf-alarms module with X.733 alarm
30 The following structures are augmented with the X.733 event type
33 1) alarms/alarm-inventory: all possible alarm types
34 2) alarms/alarm-list: every alarm in the system
35 3) alarm-notification: notifications indicating alarm-state
37 4) alarms/shelved-alarms
39 The module also optionally allows the alarm-management system
40 to configure the mapping from the ietf-alarms' alarm keys
41 to the ITU tuple (event-type, probable-cause).
43 The mapping does not include a corresponding problem value
44 specific to X.733. The recommendation is to use the
45 'alarm-type-qualifier' leaf, which serves the same purpose.
47 The module uses an integer and a corresponding string for
48 probable cause instead of a globally defined enumeration, in
49 order to be able to manage conflicting enumeration definitions.
50 A single globally defined enumeration is challenging to
53 The key words 'MUST', 'MUST NOT', 'REQUIRED', 'SHALL', 'SHALL
54 NOT', 'SHOULD', 'SHOULD NOT', 'RECOMMENDED', 'NOT RECOMMENDED',
55 'MAY', and 'OPTIONAL' in this document are to be interpreted as
56 described in BCP 14 (RFC 2119) (RFC 8174) when, and only when,
57 they appear in all capitals, as shown here.
59 Copyright (c) 2019 IETF Trust and the persons identified as
60 authors of the code. All rights reserved.
62 Redistribution and use in source and binary forms, with or
63 without modification, is permitted pursuant to, and subject to
64 the license terms contained in, the Simplified BSD License set
65 forth in Section 4.c of the IETF Trust's Legal Provisions
66 Relating to IETF Documents
67 (https://trustee.ietf.org/license-info).
69 This version of this YANG module is part of RFC 8632; see
70 the RFC itself for full legal notices.";
72 "ITU-T Recommendation X.733: Information Technology
73 - Open Systems Interconnection
74 - System Management: Alarm Reporting Function";
80 "RFC 8632: A YANG Data Model for Alarm Management";
87 feature configure-x733-mapping {
89 "The system supports configurable X733 mapping from
90 the ietf-alarms' alarm-type to X733 event-type
103 "None of the below.";
105 enum communications-alarm {
108 "An alarm of this type is principally associated with the
109 procedures and/or processes required to convey
110 information from one point to another.";
112 enum quality-of-service-alarm {
115 "An alarm of this type is principally associated with a
116 degradation in the quality of a service.";
118 enum processing-error-alarm {
121 "An alarm of this type is principally associated with a
122 software or processing fault.";
124 enum equipment-alarm {
127 "An alarm of this type is principally associated with an
130 enum environmental-alarm {
133 "An alarm of this type is principally associated with a
134 condition relating to an enclosure in which the equipment
137 enum integrity-violation {
140 "An indication that information may have been illegally
141 modified, inserted, or deleted.";
143 enum operational-violation {
146 "An indication that the provision of the requested service
147 was not possible due to the unavailability, malfunction,
148 or incorrect invocation of the service.";
150 enum physical-violation {
153 "An indication that a physical resource has been violated
154 in a way that suggests a security attack.";
156 enum security-service-or-mechanism-violation {
159 "An indication that a security attack has been detected by
160 a security service or mechanism.";
162 enum time-domain-violation {
165 "An indication that an event has occurred at an unexpected
166 or prohibited time.";
170 "The event types as defined by X.733 and X.736.";
172 "ITU-T Recommendation X.733: Information Technology
173 - Open Systems Interconnection
174 - System Management: Alarm Reporting Function
175 ITU-T Recommendation X.736: Information Technology
176 - Open Systems Interconnection
177 - System Management: Security Alarm Reporting Function";
184 "There is at least one outstanding alarm of a
185 severity higher (more severe) than that in the
190 "The Perceived severity reported in the current
191 alarm is the same as the highest (most severe)
192 of any of the outstanding alarms";
196 "The Perceived severity in the current alarm is
197 higher (more severe) than that reported in any
198 of the outstanding alarms.";
202 "This type is used to describe the
203 severity trend of the alarming resource.";
205 "ITU-T Recommendation X.721: Information Technology
206 - Open Systems Interconnection
207 - Structure of management information:
208 Definition of management information
209 Module Attribute-ASN1Module";
221 "A generic union type to match the ITU choice of
229 grouping x733-alarm-parameters {
231 "Common X.733 parameters for alarms.";
235 "The X.733/X.736 event type for this alarm.";
237 leaf probable-cause {
240 "The X.733 probable cause for this alarm.";
242 leaf probable-cause-string {
245 "The user-friendly string matching
246 the probable cause integer value. The string
247 SHOULD match the X.733 enumeration. For example,
248 value 27 is 'localNodeTransmissionError'.";
250 container threshold-information {
252 "This parameter shall be present when the alarm
253 is a result of crossing a threshold. ";
254 leaf triggered-threshold {
257 "The identifier of the threshold attribute that
258 caused the notification.";
260 leaf observed-value {
263 "The value of the gauge or counter that crossed
264 the threshold. This may be different from the
265 threshold value if, for example, the gauge may
266 only take on discrete values.";
268 choice threshold-level {
270 "In the case of a gauge, the threshold level specifies
271 a pair of threshold values: the first is the value
272 of the crossed threshold, and the second is its
273 corresponding hysteresis; in the case of a counter,
274 the threshold level specifies only the threshold
280 "The going-up threshold for raising the alarm.";
285 "The going-down threshold for clearing the alarm.
286 This is used for hysteresis functions for gauges.";
293 "The going-down threshold for raising the alarm.";
298 "The going-up threshold for clearing the alarm.
299 This is used for hysteresis functions for gauges.";
304 type yang:date-and-time;
306 "For a gauge threshold, it's the time at which the
307 threshold was last re-armed; namely, it's the time after
308 the previous threshold crossing at which the hysteresis
309 value of the threshold was exceeded, thus again permitting
310 the generation of notifications when the threshold is
311 crossed. For a counter threshold, it's the later of the
312 time at which the threshold offset was last applied or the
313 counter was last initialized (for resettable counters).";
316 list monitored-attributes {
320 "The Monitored attributes parameter, when present, defines
321 one or more attributes of the resource and their
322 corresponding values at the time of the alarm.";
324 leaf-list proposed-repair-actions {
327 "This parameter, when present, is used if the cause is
328 known and the system being managed can suggest one or
329 more solutions (such as switch in standby equipment,
330 retry, and replace media).";
332 leaf trend-indication {
335 "This parameter specifies the current severity
336 trend of the resource. If present, it indicates
337 that there are one or more alarms ('outstanding
338 alarms') that have not been cleared and that
339 pertain to the same resource as this alarm
340 ('current alarm') does. The possible values are:
342 more-severe: The Perceived severity in the current
343 alarm is higher (more severe) than that reported in
344 any of the outstanding alarms.
346 no-change: The Perceived severity reported in the
347 current alarm is the same as the highest (most severe)
348 of any of the outstanding alarms.
350 less-severe: There is at least one outstanding alarm
351 of a severity higher (more severe) than that in the
354 leaf backedup-status {
357 "This parameter, when present, specifies whether or not the
358 object emitting the alarm has been backed up; therefore, it
359 is possible to know whether or not services provided to the
360 user have been disrupted when this parameter is included.
361 The use of this field in conjunction with the
362 'perceived-severity' field provides information in an
363 independent form to qualify the seriousness of the alarm and
364 the ability of the system as a whole to continue to provide
365 services. If the value of this parameter is true, it
366 indicates that the object emitting the alarm has been backed
367 up; if false, the object has not been backed up.";
372 "This parameter SHALL be present when the 'backedup-status'
373 parameter is present and has the value 'true'. This
374 parameter specifies the managed object instance that is
375 providing back-up services for the managed object to which
376 the notification pertains. This parameter is useful, for
377 example, when the back-up object is from a pool of objects,
378 any of which may be dynamically allocated to replace a
381 list additional-information {
384 "This parameter allows the inclusion of an additional
385 information set in the alarm. It is a series of data
386 structures, each of which contains three items of
387 information: an identifier, a significance indicator,
388 and the problem information.";
392 "Identifies the data type of the information parameter.";
397 "Set to 'true' if the receiving system must be able to
398 parse the contents of the information subparameter
399 for the event report to be fully understood.";
404 "Additional information about the alarm.";
407 leaf security-alarm-detector {
410 "This parameter identifies the detector of the security
416 "This parameter identifies the service-user whose request
417 for service led to the generation of the security alarm.";
419 leaf service-provider {
422 "This parameter identifies the intended service-provider
423 of the service that led to the generation of the security
427 "ITU-T Recommendation X.733: Information Technology
428 - Open Systems Interconnection
429 - System Management: Alarm Reporting Function
430 ITU-T Recommendation X.736: Information Technology
431 - Open Systems Interconnection
432 - System Management: Security Alarm Reporting Function";
435 grouping x733-alarm-definition-parameters {
437 "Common X.733 parameters for alarm definitions.
438 This grouping is used to define those alarm
439 attributes that can be mapped from the alarm-type
440 mechanism in the ietf-alarms module.";
444 "The alarm type has this X.733/X.736 event type.";
446 leaf probable-cause {
449 "The alarm type has this X.733 probable cause value.
450 This module defines probable cause as an integer
451 and not as an enumeration. The reason being that the
452 primary use of probable cause is in the management
453 application if it is based on the X.733 standard.
454 However, most management applications have their own
455 defined enum definitions and merging enums from
456 different systems might create conflicts. By using
457 a configurable uint32, the system can be configured
458 to match the enum values in the management application.";
460 leaf probable-cause-string {
463 "This string can be used to give a user-friendly string
464 to the probable cause value.";
470 "A grouping to match the ITU generic reference to
475 "The resource representing the attribute.";
480 "The value represented as a string since it could
484 "ITU-T Recommendation X.721: Information Technology
485 - Open Systems Interconnection
486 - Structure of management information:
487 Definition of management information
488 Module Attribute-ASN1Module";
492 * Add X.733 parameters to the alarm definitions, alarms,
496 augment "/al:alarms/al:alarm-inventory/al:alarm-type" {
498 "Augment X.733 mapping information to the alarm inventory.";
499 uses x733-alarm-definition-parameters;
503 * Add X.733 configurable mapping.
506 augment "/al:alarms/al:control" {
508 "Add X.733 mapping capabilities. ";
510 if-feature "configure-x733-mapping";
511 key "alarm-type-id alarm-type-qualifier-match";
513 "This list allows a management application to control the
514 X.733 mapping for all alarm types in the system. Any entry
515 in this list will allow the alarm manager to override the
516 default X.733 mapping in the system, and the final mapping
517 will be shown in the alarm inventory.";
519 type al:alarm-type-id;
521 "Map the alarm type with this alarm type identifier.";
523 leaf alarm-type-qualifier-match {
526 "A W3C regular expression that is used when mapping an
527 alarm type and alarm-type-qualifier to X.733 parameters.";
529 uses x733-alarm-definition-parameters;
533 augment "/al:alarms/al:alarm-list/al:alarm" {
535 "Augment X.733 information to the alarm.";
536 uses x733-alarm-parameters;
539 augment "/al:alarms/al:shelved-alarms/al:shelved-alarm" {
541 "Augment X.733 information to the alarm.";
542 uses x733-alarm-parameters;
545 augment "/al:alarm-notification" {
547 "Augment X.733 information to the alarm notification.";
548 uses x733-alarm-parameters;