1 kumpf 1.3 //====================================================================
2 // Title: Event MOF Specification 2.7
3 // Filename: CIM_Event27.mof
4 // Version: 2.7.0
5 // Status: Final
6 // Date: 03/17/2003
7 // ===================================================================
8 // Copyright 2001-2003 Distributed Management Task Force, Inc. (DMTF).
9 // All rights reserved.
10 // DMTF is a not-for-profit association of industry members dedicated
11 // to promoting enterprise and systems management and interoperability.
12 // DMTF specifications and documents may be reproduced for uses
13 // consistent with this purpose by members and non-members,
14 // provided that correct attribution is given.
15 // As DMTF specifications may be revised from time to time,
16 // the particular version and release date should always be noted.
17 //
18 // Implementation of certain elements of this standard or proposed
19 // standard may be subject to third party patent rights, including
20 // provisional patent rights (herein "patent rights"). DMTF makes
21 // no representations to users of the standard as to the existence
22 kumpf 1.3 // of such rights, and is not responsible to recognize, disclose, or
23 // identify any or all such third party patent right, owners or
24 // claimants, nor for any incomplete or inaccurate identification or
25 // disclosure of such rights, owners or claimants. DMTF shall have no
26 // liability to any party, in any manner or circumstance, under any
27 // legal theory whatsoever, for failure to recognize, disclose, or
28 // identify any such third party patent rights, or for such party's
29 // reliance on the standard or incorporation thereof in its product,
30 // protocols or testing procedures. DMTF shall have no liability to
31 // any party implementing such standard, whether such implementation
32 // is foreseeable or not, nor to any patent owner or claimant, and shall
33 // have no liability or responsibility for costs or losses incurred if
34 // a standard is withdrawn or modified after publication, and shall be
35 // indemnified and held harmless by any party implementing the
36 // standard from any and all claims of infringement by a patent owner
37 // for such implementations.
38 //
39 // For information about patents held by third-parties which have
40 // notified the DMTF that, in their opinion, such patent may relate to
41 // or impact implementations of DMTF standards, visit
42 // http://www.dmtf.org/about/policies/disclosures.php.
43 kumpf 1.3 // ===================================================================
44 // Description: The Event Model describes types of notifications,
45 // whether generic (such as InstanceModification) or
46 // instrumentation-specific (such as AlertIndication).
47 // The model also defines classes to subscribe to/filter
48 // indications and describe their delivery.
49 //
50 // The object classes below are listed in an order that
51 // avoids forward references. Required objects, defined
52 // by other working groups, are omitted.
53 // ===================================================================
54 // 03/17/2003 - 2.7 Final
55 // CR986 - Remove Experimental Qualifier
56 // 09/23/2002 - 2.7 Preliminary
57 // CR869 - Fix the Description for IndicationHandlerCIMXML.
58 // Destination Description
59 // CR811 - Add values to ProbableCause to align with
60 // ITU-T M.3100 and ITU-IANA-ALARM-TC
61 // CR709 - Move IndicationIdentifier and
62 // IndicationCorrelation to CIM_Indication
63 // CR652 - Changes to CIM_AlertIndication to consolidate
64 kumpf 1.3 // and capture Event data
65 // CR651 - Add RepeatNotification properties to
66 // CIM_IndicationSubscription
67 // CR650 - Extend CIM_SubscriptionIndication and
68 // CIM_HandlerIndication
69 // CR647 - Add ErrorHandling to CIM_IndicationSubscription
70 // 05/09/2002 - 2.6 Final
71 // ===================================================================
72
73 #pragma Locale ("en_US")
74
75
76 // ==================================================================
77 // Compile prerequisite: Core MOF
78 // ==================================================================
79
80
81 // ====================================================================
82 // Indication
83 // ====================================================================
84 [Indication, Abstract, Version("2.7.0"), Description (
85 kumpf 1.3 "CIM_Indication is the abstract root class for all notifications "
86 "about changes in schema, objects and their data, and about "
87 "events detected by providers and instrumentation. Subclasses "
88 "represent specific types of notifications. \n"
89 "\n"
90 "To receive an Indication, a consumer (or subscriber) must create "
91 "an instance of CIM_IndicationFilter describing the criteria of "
92 "the notification, an instance of CIM_IndicationHandler describing "
93 "the delivery of the notification, and an instance of "
94 "CIM_IndicationSubscription associating the Filter and Handler.") ]
95 class CIM_Indication {
96
97 [Description (
98 "An identifier for the Indication. This property is "
99 "similar to a key value in that it can be used for "
100 "identification, when correlating Indications (see "
101 "the CorrelatedIndications array). Its value SHOULD be unique "
102 "as long as Alert correlations are reported, but MAY be "
103 "reused or left NULL if no future Indications will "
104 "reference it in their CorrelatedIndications array."),
105 MappingStrings {
106 kumpf 1.3 "Recommendation.ITU|X733.Notification identifier"} ]
107 string IndicationIdentifier;
108
109 [Description (
110 "A list of IndicationIdentifiers whose notifications are correlated "
111 "with (related to) this one."),
112 MappingStrings {
113 "Recommendation.ITU|X733.Correlated notifications"} ]
114 string CorrelatedIndications[];
115
116 [Description (
117 "The time and date of creation of the Indication. The property "
118 "may be set to NULL if the entity creating the Indication is "
119 "not capable of determing this information. Note that "
120 "IndicationTime may be the same for two Indications that are "
121 "generated in rapid succession.") ]
122 datetime IndicationTime;
123 };
124
125
126 // ====================================================================
127 kumpf 1.3 // ClassIndication
128 // ====================================================================
129 [Indication, Abstract, Version("2.6.0"), Description (
130 "CIM_ClassIndication is an abstract superclass describing changes "
131 "in the definition of the schema. Subclasses represent specific "
132 "types of change notifications, such as class creation, deletion "
133 "and modification.") ]
134 class CIM_ClassIndication : CIM_Indication {
135
136 [EmbeddedObject, Required, Description (
137 "The current definition of the class that is created, changed "
138 "or deleted in the schema. In the case of a CIM_ClassDeletion "
139 "Indication, the definition for the class just prior to "
140 "deletion should be placed in this property.") ]
141 string ClassDefinition;
142 };
143
144
145 // ====================================================================
146 // ClassCreation
147 // ====================================================================
148 kumpf 1.3 [Indication, Version("2.6.0"), Description (
149 "CIM_ClassCreation notifies when a new class is defined in the "
150 "schema.") ]
151 class CIM_ClassCreation : CIM_ClassIndication {
152 };
153
154
155 // ====================================================================
156 // ClassDeletion
157 // ====================================================================
158 [Indication, Version("2.6.0"), Description (
159 "CIM_ClassDeletion notifies when a class is deleted from the "
160 "schema.") ]
161 class CIM_ClassDeletion : CIM_ClassIndication {
162 };
163
164
165 // ====================================================================
166 // ClassModification
167 // ====================================================================
168 [Indication, Version("2.6.0"), Description (
169 kumpf 1.3 "CIM_ClassModification notifies when a class definition in the "
170 "schema is modified.") ]
171 class CIM_ClassModification : CIM_ClassIndication {
172
173 [EmbeddedObject, Required, Description (
174 "A copy of the 'previous' class definition whose change "
175 "generated the Indication. PreviousClassDefinition contains "
176 "an 'older' copy of the class' information, as compared to "
177 "what is found in the ClassDefinition property (inherited "
178 "from ClassIndication).") ]
179 string PreviousClassDefinition;
180 };
181
182
183 // ====================================================================
184 // InstIndication
185 // ====================================================================
186 [Indication, Abstract, Version("2.6.0"), Description (
187 "CIM_InstIndication is an abstract superclass describing changes "
188 "to instances. Subclasses represent specific types of change "
189 "notifications, such as instance creation, deletion and "
190 kumpf 1.3 "modification.") ]
191 class CIM_InstIndication : CIM_Indication {
192
193 [EmbeddedObject, Required, Description (
194 "A copy of the instance that changed to generate the "
195 "Indication. SourceInstance contains the current values of "
196 "the properties selected by the Indication"
197 "Filter's Query. In the case of CIM_InstDeletion, "
198 "the property values are copied before the instance is "
199 "deleted.") ]
200 string SourceInstance;
201 };
202
203
204 // ====================================================================
205 // InstCreation
206 // ====================================================================
207 [Indication, Version("2.6.0"), Description (
208 "CIM_InstCreation notifies when a new instance is created.") ]
209 class CIM_InstCreation : CIM_InstIndication {
210 };
211 kumpf 1.3
212
213 // ====================================================================
214 // InstDeletion
215 // ====================================================================
216 [Indication, Version("2.6.0"), Description (
217 "CIM_InstDeletion notifies when an existing instance is deleted.") ]
218 class CIM_InstDeletion : CIM_InstIndication {
219 };
220
221
222 // ====================================================================
223 // InstModification
224 // ====================================================================
225 [Indication, Version("2.6.0"), Description (
226 "CIM_InstModification notifies when an instance is modified.") ]
227 class CIM_InstModification : CIM_InstIndication {
228
229 [EmbeddedObject, Required, Description (
230 "A copy of the 'previous' instance whose change generated the "
231 "Indication. PreviousInstance contains 'older' values of "
232 kumpf 1.3 "an instance's properties (as compared to SourceInstance), "
233 "selected by the IndicationFilter's Query.") ]
234 string PreviousInstance;
235 };
236
237
238 // ====================================================================
239 // InstMethodCall
240 // ====================================================================
241 [Indication, Version("2.6.0"), Description (
242 "CIM_InstMethodCall notifies when an instance's method is "
243 "invoked.") ]
244 class CIM_InstMethodCall : CIM_InstIndication {
245
246 [Required, Description (
247 "The name of the method invoked.") ]
248 string MethodName;
249
250 [EmbeddedObject, Description (
251 "The parameters of the method, formatted as an "
252 "EmbeddedObject (with a predefined class name of "
253 kumpf 1.3 "\"__MethodParameters\".") ]
254 string MethodParameters;
255
256 [Description (
257 "ReturnValue's data is dependent on the PreCall property. "
258 "When PreCall is TRUE, this property is NULL describing that "
259 "there is no method return value (since the method has not yet "
260 "executed). When PreCall is FALSE, ReturnValue contains a "
261 "string representation of the method's return value."),
262 ModelCorrespondence {"CIM_InstMethodCall.PreCall"} ]
263 string ReturnValue;
264
265 [Required, Description (
266 "Boolean indicating whether the Indication is sent before "
267 "the method begins executing (TRUE) or when the method "
268 "completes (FALSE). When TRUE, the inherited property "
269 "SourceInstance contains the value of the instance (the "
270 "properties defined by the Filter's Query clause), "
271 "before execution of the method. When PreCall is FALSE, "
272 "SourceInstance embeds the instance as it appears after "
273 "the completion of the method.") ]
274 kumpf 1.3 boolean PreCall;
275 };
276
277
278 // ====================================================================
279 // InstRead
280 // ====================================================================
281 [Indication, Version("2.6.0"), Description (
282 "CIM_InstRead notifies when an instance is read but not "
283 "modified.") ]
284 class CIM_InstRead : CIM_InstIndication {
285 };
286
287
288 // ====================================================================
289 // ProcessIndication
290 // ====================================================================
291 [Indication, Abstract, Version("2.6.0"), Description (
292 "An abstract superclass for specialized Indication classes, "
293 "addressing specific changes and alerts published by providers "
294 "and instrumentation. Subclasses include AlertIndication (with "
295 kumpf 1.3 "properties such as PerceivedSeverity and ProbableCause), and "
296 "SNMPTrapIndication (which recasts Traps as CIM indications).") ]
297 class CIM_ProcessIndication : CIM_Indication {
298 };
299
300
301 // ====================================================================
302 // SNMPTrapIndication
303 // ====================================================================
304 [Indication, Version("2.6.0"), Description (
305 "A concrete class for mapping an SNMP Trap to CIM based on the "
306 "IETF RFC 1157. The usefulness of this class is to describe "
307 "common trap semantics. But, a complete understanding of any trap "
308 "data received relies on the Indicaton recipient having access to "
309 "the sender's MIB. Understanding can be improved by mapping the "
310 "SNMP domain to CIM, and using CIM LifeCycle and standard "
311 "subclasses of CIM_ProcessIndication.") ]
312 class CIM_SNMPTrapIndication : CIM_ProcessIndication {
313
314 [Description (
315 "Type of object generating the trap."),
316 kumpf 1.3 Mappingstrings {"PDU.IETF|RFC1157-TRAP-PDU.enterprise"} ]
317 string Enterprise;
318
319 [Description (
320 "Address of the object generating the trap."),
321 Mappingstrings {"PDU.IETF|RFC1157-TRAP-PDU.agent-addr"} ]
322 string AgentAddress;
323
324 [Description (
325 "An enumerated value that describes the generic trap type: \n"
326 "- The coldStart(0) trap signifies that the sending protocol "
327 "entity is reinitializing itself such that the agent's "
328 "configuration or the protocol entity implementation may be "
329 "altered. \n"
330 "- The warmStart(1) trap signifies that the sending protocol "
331 "entity is reinitializing itself such that neither the agent "
332 "configuration nor the protocol entity implementation is "
333 "altered. \n"
334 "- The linkDown(2) trap signifies that the sending protocol "
335 "recognizes a failure in one of the communication links "
336 "represented in the agent's configuration. The Trap-PDU of "
337 kumpf 1.3 "type linkDown contains as the first element of its "
338 "variable-bindings the name and value of the ifIndex instance "
339 "for the affected interface. \n"
340 "- The linkUp(3) trap signifies that the sending protocol "
341 "entity recognizes that one of the communication links "
342 "represented in the agent's configuration has come up. The "
343 "Trap-PDU of type linkUp contains as the first element of its "
344 "variable-bindings, the name and value of the ifIndex instance "
345 "for the affected interface. \n"
346 "- An authenticationFailure(4) trap signifies that the sending "
347 "protocol entity is the adressee of a protocol message that was "
348 "not properly authenticated. While implementations of SNMP must "
349 "be capable of generating this trap, they must also be capable "
350 "of suppressing the emission of such traps via an implementation-"
351 "specific mechanism. \n"
352 "- An egpNeighborLoss(5) trap signifies that an EGP neighbor for "
353 "whom the sending protocol entity was an EGP peer has been "
354 "marked as down and the peer relationship no longer pertains. "
355 "The Trap-PDU of type egpNeighborLoss contains as the first "
356 "element of its variable-bindings, the name and value of the "
357 "egpNeighAddr instance for the affected neighbor. \n"
358 kumpf 1.3 "- An enterpriseSpecific(6) trap signifies that the sending "
359 "protocol entity recognizes that some enterprise-specific "
360 "event has occurred. The specific-trap field identifies the "
361 "particular trap which occurred."),
362 Values {"Cold Start", "Warm Start", "Link Down", "Link Up",
363 "Authentication Failure", "EGP Neighbor Loss",
364 "Enterprise Specific"},
365 Mappingstrings {"PDU.IETF|RFC1157-TRAP-PDU.generic-trap"} ]
366 uint16 GenericTrap;
367
368 [Description ("Specific trap code."),
369 Mappingstrings {"PDU.IETF|RFC1157-TRAP-PDU.specific-trap"} ]
370 uint32 SpecificTrap;
371
372 [Description (
373 "Time elapsed between the last (re)intialization of the "
374 "managed entity and the generation of the trap."),
375 Mappingstrings {"PDU.IETF|RFC1157-TRAP-PDU.time-stamp"} ]
376 datetime TimeStamp;
377
378 [Description (
379 kumpf 1.3 "Object naming information (an OID) from the 'variable "
380 "binding' portion of the Trap. This array is correlated "
381 "with the VarBindSyntaxes and VarBindValues arrays. Each "
382 "entry is related to the entries in the other arrays, "
383 "that are located at the same index. In this way, the "
384 "variable binding's name/syntax/value tuple can be "
385 "constructed."), ArrayType ("Indexed"),
386 ModelCorrespondence {
387 "CIM_SNMPTrapIndication.VarBindSyntaxes",
388 "CIM_SNMPTrapIndication.VarBindValues"},
389 Mappingstrings {
390 "PDU.IETF|RFC1157-TRAP-PDU.variable-bindings"} ]
391 string VarBindNames[];
392
393 [Description (
394 "Object syntax information (defined as an enumerated value) "
395 "from the 'variable binding' portion of the Trap. This array "
396 "is correlated with the VarBindNames and VarBindValues "
397 "arrays. Each entry is related to the entries in the other "
398 "arrays, that are located at the same index. In this way, "
399 "the variable binding's name/syntax/value tuple can be "
400 kumpf 1.3 "constructed."), ArrayType ("Indexed"),
401 ValueMap {"1", "2", "3", "4", "5", "6", "7", "8"},
402 Values {"Integer", "OctetString", "ObjectIdentifier",
403 "NetworkAddress", "Counter", "Gauge",
404 "TimeTicks", "Opaque"},
405 ModelCorrespondence {"CIM_SNMPTrapIndication.VarBindNames",
406 "CIM_SNMPTrapIndication.VarBindValues"},
407 Mappingstrings {
408 "PDU.IETF|RFC1157-TRAP-PDU.variable-bindings"} ]
409 uint16 VarBindSyntaxes[];
410
411 [Description (
412 "An OctetString representing object value information "
413 "from the 'variable binding' portion of the Trap. This "
414 "array is correlated with the VarBindNames and "
415 "VarBindSyntaxes arrays. Each entry is related to the "
416 "entries in the other arrays, that are located at the "
417 "same index. In this way, the variable binding's "
418 "name/syntax/value tuple can be constructed."),
419 ArrayType ("Indexed"), OctetString,
420 ModelCorrespondence {"CIM_SNMPTrapIndication.VarBindNames",
421 kumpf 1.3 "CIM_SNMPTrapIndication.VarBindSyntaxes"},
422 Mappingstrings {"PDU.IETF|RFC1157-TRAP-PDU.variable-bindings"} ]
423 string VarBindValues[];
424 };
425
426
427 // ====================================================================
428 // AlertIndication
429 // ====================================================================
430 [Indication, Version("2.7.0"), Description (
431 "A concrete superclass for CIM Alert notifications. An "
432 "AlertIndication is a specialized type of CIM_Indication that "
433 "contains information about the severity, cause, recommended "
434 "actions and other data of a real world event. This event and its "
435 "data may or may not be modeled in the CIM class hierarchy.") ]
436 class CIM_AlertIndication : CIM_ProcessIndication {
437
438 [Description (
439 "A short description of the Indication."),
440 MappingStrings {"Recommendation.ITU|X733.Additional text"} ]
441 string Description;
442 kumpf 1.3
443 [Description (
444 "The identifying information of the entity (ie, the instance) for "
445 "which this Indication is generated. The property contains the "
446 "path of an instance, encoded as a string parameter - if the "
447 "instance is modeled in the CIM Schema. If not a CIM instance, "
448 "the property contains some identifying string that names the "
449 "entity for which the Alert is generated.") ]
450 string AlertingManagedElement;
451
452 [Required, Description (
453 "Primary classification of the Indication. The following values "
454 "are defined: \n"
455 "1 - Other. The Indication's OtherAlertType property conveys "
456 "its classification. Use of \"Other\" in an enumeration is a "
457 "standard CIM convention. It means that the current Indication "
458 "does not fit into the categories described by this enumeration. \n"
459 "2 - Communications Alert. An Indication of this type is "
460 "principally associated with the procedures and/or processes "
461 "required to convey information from one point to another. \n"
462 "3 - Quality of Service Alert. An Indication of this type is "
463 kumpf 1.3 "principally associated with a degradation or errors in the "
464 "performance or function of an entity. \n"
465 "4 - Processing Error. An Indication of this type is "
466 "principally associated with a software or processing fault. \n"
467 "5 - Device Alert. An Indication of this type is principally "
468 "associated with an equipment or hardware fault. \n"
469 "6 - Environmental Alert. An Indication of this type is "
470 "principally associated with a condition relating to an "
471 "enclosure in which the hardware resides, or other "
472 "environmental considerations. \n"
473 "7 - Model Change. The Indication addresses changes in the "
474 "Information Model. For example, it may embed a Lifecycle "
475 "Indication to convey the specific model change being "
476 "alerted. \n"
477 "8 - Security Alert. An Indication of this type is associated "
478 "with security violations, detection of viruses, and similar "
479 "issues."),
480 ValueMap {"1", "2", "3", "4", "5", "6", "7", "8"},
481 Values {"Other", "Communications Alert",
482 "Quality of Service Alert", "Processing Error",
483 "Device Alert", "Environmental Alert", "Model Change",
484 kumpf 1.3 "Security Alert"},
485 MappingStrings {"Recommendation.ITU|X733.Event type"} ]
486 uint16 AlertType;
487
488 [Description (
489 "A string describing the Alert type - used when the AlertType "
490 "property is set to 1, \"Other State Change\"."),
491 ModelCorrespondence {"CIM_AlertIndication.AlertType"} ]
492 string OtherAlertType;
493
494 [Required, Description (
495 "An enumerated value that describes the severity of the Alert"
496 "Indication from the notifier's point of view: \n"
497 "1 - Other, by CIM convention, is used to indicate that the "
498 "Severity's value can be found in the OtherSeverity property. \n"
499 "3 - Degraded/Warning should be used when its appropriate to let "
500 "the user decide if action is needed. \n"
501 "4 - Minor should be used to indicate action is needed, but the "
502 "situation is not serious at this time. \n"
503 "5 - Major should be used to indicate action is needed NOW. \n"
504 "6 - Critical should be used to indicate action is needed NOW "
505 kumpf 1.3 "and the scope is broad (perhaps an imminent outage to a critical "
506 "resource will result). \n"
507 "7 - Fatal/NonRecoverable should be used to indicate an error "
508 "occurred, but it's too late to take remedial action. \n"
509 "2 and 0 - Information and Unknown (respectively) follow common "
510 "usage. Literally, the AlertIndication is purely informational "
511 "or its severity is simply unknown."),
512 Values {"Unknown", "Other", "Information", "Degraded/Warning",
513 "Minor", "Major", "Critical", "Fatal/NonRecoverable"},
514 MappingStrings {"Recommendation.ITU|X733.Perceived severity"} ]
515 uint16 PerceivedSeverity;
516
517 [Description (
518 "Holds the value of the user defined severity value when "
519 "'Severity' is 1 (\"Other\")."),
520 ModelCorrespondence {"CIM_AlertIndication.PerceivedSeverity"} ]
521 string OtherSeverity;
522
523 [Required, Description (
524 "An enumerated value that describes the probable cause of the "
525 "situation which resulted in the AlertIndication."),
526 kumpf 1.3 ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10",
527 "11", "12", "13", "14", "15", "16", "17", "18", "19", "20",
528 "21", "22", "23", "24", "25", "26", "27", "28", "29", "30",
529 "31", "32", "33", "34", "35", "36", "37", "38", "39", "40",
530 "41", "42", "43", "44", "45", "46", "47", "48", "49", "50",
531 "51", "52", "53", "54", "55", "56", "57", "58", "59", "60",
532 "61", "62", "63", "64", "65", "66", "67", "68", "69", "70",
533 "71", "72", "73", "74", "75", "76", "77", "78", "79", "80",
534 "81", "82", "83", "84", "85", "86", "87", "88", "89", "90",
535 "91", "92", "93", "94", "95", "96", "97", "98", "99", "100",
536 "101", "102", "103", "104", "105", "106", "107", "108",
537 "109", "110",
538 "111", "112", "113", "114", "115", "116", "117", "118",
539 "119", "120",
540 "121", "122", "123", "124", "125", "126", "127", "128",
541 "129", "130"},
542 Values {"Unknown", "Other", "Adapter/Card Error",
543 "Application Subsystem Failure", "Bandwidth Reduced",
544 "Connection Establishment Error",
545 "Communications Protocol Error",
546 "Communications Subsystem Failure",
547 kumpf 1.3 "Configuration/Customization Error", "Congestion",
548 "Corrupt Data", "CPU Cycles Limit Exceeded",
549 "Dataset/Modem Error", "Degraded Signal",
550 "DTE-DCE Interface Error", "Enclosure Door Open",
551 "Equipment Malfunction", "Excessive Vibration",
552 "File Format Error", "Fire Detected", "Flood Detected",
553 "Framing Error", "HVAC Problem", "Humidity Unacceptable",
554 "I/O Device Error", "Input Device Error", "LAN Error",
555 "Non-Toxic Leak Detected", "Local Node Transmission Error",
556 "Loss of Frame", "Loss of Signal",
557 //31
558 "Material Supply Exhausted", "Multiplexer Problem",
559 "Out of Memory", "Output Device Error",
560 "Performance Degraded", "Power Problem",
561 "Pressure Unacceptable",
562 "Processor Problem (Internal Machine Error)",
563 "Pump Failure", "Queue Size Exceeded", "Receive Failure",
564 "Receiver Failure", "Remote Node Transmission Error",
565 "Resource at or Nearing Capacity", "Response Time Excessive",
566 "Retransmission Rate Excessive", "Software Error",
567 "Software Program Abnormally Terminated",
568 kumpf 1.3 "Software Program Error (Incorrect Results)",
569 "Storage Capacity Problem", "Temperature Unacceptable",
570 "Threshold Crossed", "Timing Problem",
571 "Toxic Leak Detected", "Transmit Failure",
572 "Transmitter Failure", "Underlying Resource Unavailable",
573 "Version MisMatch", "Previous Alert Cleared",
574 //60
575 "Login Attempts Failed", "Software Virus Detected",
576 "Hardware Security Breached", "Denial of Service Detected",
577 "Security Credential MisMatch", "Unauthorized Access",
578 "Alarm Received", "Loss of Pointer", "Payload Mismatch",
579 "Transmission Error", "Excessive Error Rate", "Trace Problem",
580 "Element Unavailable", "Element Missing", "Loss of Multi Frame",
581 "Broadcast Channel Failure", "Invalid Message Received",
582 "Routing Failure", "Backplane Failure", "Identifier Duplication",
583 "Protection Path Failure", "Sync Loss or Mismatch",
584 "Terminal Problem", "Real Time Clock Failure", "Antenna Failure",
585 "Battery Charging Failure", "Disk Failure",
586 "Frequency Hopping Failure", "Loss of Redundancy",
587 "Power Supply Failure", "Signal Quality Problem",
588 //91
589 kumpf 1.3 "Battery Discharging", "Battery Failure",
590 "Commercial Power Problem", "Fan Failure",
591 "Engine Failure", "Sensor Failure", "Fuse Failure",
592 "Generator Failure", "Low Battery", "Low Fuel", "Low Water",
593 "Explosive Gas", "High Winds", "Ice Buildup", "Smoke",
594 "Memory Mismatch", "Out of CPU Cycles",
595 "Software Environment Problem", "Software Download Failure",
596 "Element Reinitialized", "Timeout", "Logging Problems",
597 "Leak Detected", "Protection Mechanism Failure",
598 //115
599 "Protecting Resource Failure", "Database Inconsistency",
600 "Authentication Failure", "Breach of Confidentiality",
601 "Cable Tamper", "Delayed Information", "Duplicate Information",
602 "Information Missing", "Information Modification",
603 "Information Out of Sequence", "Key Expired",
604 "Non-Repudiation Failure", "Out of Hours Activity",
605 "Out of Service", "Procedural Error", "Unexpected Information"},
606 MappingStrings {"Recommendation.ITU|X733.Probable cause",
607 "Recommendation.ITU|M3100.probableCause",
608 "ITU-IANA-ALARM-TC"},
609 ModelCorrespondence {
610 kumpf 1.3 "CIM_AlertIndication.ProbableCauseDescription",
611 "CIM_AlertIndication.EventID",
612 "CIM_AlertIndication.EventTime"} ]
613 uint16 ProbableCause;
614
615 [Description (
616 "Provides additional information related to the "
617 "ProbableCause."),
618 ModelCorrespondence {"CIM_AlertIndication.ProbableCause"} ]
619 string ProbableCauseDescription;
620
621 [Description (
622 "Provides information on trending - trending up, down or "
623 "no change."),
624 Values {"Unknown", "Not Applicable", "Trending Up",
625 "Trending Down", "No Change"},
626 MappingStrings {"Recommendation.ITU|X733.TrendIndication"} ]
627 uint16 Trending;
628
629 [Description (
630 "Free form descriptions of the recommended actions to take to "
631 kumpf 1.3 "resolve the cause of the notification."),
632 MappingStrings {"Recommendation.ITU|X733.Proposed repair actions"} ]
633 string RecommendedActions[];
634
635 [Description (
636 "An instrumentation or provider specific value that "
637 "describes the underlying \"real-world\" event represented "
638 "by the Indication. Two Indications with the same, "
639 "non NULL EventID value are considered, by the creating "
640 "entity, to represent the same event. The comparison of "
641 "two EventID values is only defined for Alert Indications "
642 "with identical, non NULL values of SystemCreateClassName, "
643 "SystemName and ProviderName."),
644 ModelCorrespondence {"CIM_AlertIndication.ProbableCause"} ]
645 string EventID;
646
647 [Description (
648 "The time and date the underlying event was first "
649 "detected. If specified, this property MUST be set to "
650 "NULL if the creating entity is not capable of providing "
651 "this information. This value is based on the notion "
652 kumpf 1.3 "of local date and time of the Managed System Element "
653 "generating the Indication."),
654 ModelCorrespondence {"CIM_AlertIndication.ProbableCause"} ]
655 datetime EventTime;
656
657 [MaxLen (256), Description (
658 "The scoping System's CreationClassName for the Provider "
659 "generating this Indication.") ]
660 string SystemCreationClassName;
661
662 [MaxLen (256), Description (
663 "The scoping System's Name for the Provider generating "
664 "this Indication.") ]
665 string SystemName;
666
667 [MaxLen (256), Description (
668 "The name of the Provider generating this Indication.") ]
669 string ProviderName;
670 };
671
672
673 kumpf 1.3 // ====================================================================
674 // ThresholdIndication
675 // ====================================================================
676 [Indication, Version("2.6.0"), Description (
677 "A subclass of CIM_AlertIndications carrying additional threshold "
678 "information related to the notification. This subclass is used "
679 "when one of the ProbableCauses is set to 53, \"Threshold "
680 "Crossed\".") ]
681 class CIM_ThresholdIndication : CIM_AlertIndication {
682
683 [Description (
684 "A string describing the threshold or naming the property that "
685 "represents the threshold, if modeled in the CIM hierarchy. In "
686 "the latter case, the value should be written as <schema name>_"
687 "<class name>.<property name>."),
688 MappingStrings {
689 "Recommendation.ITU|X733.Threshold information"} ]
690 string ThresholdIdentifier;
691
692 [Description (
693 "A string holding the current value of the threshold. This is "
694 kumpf 1.3 "modeled as a string for universal mapping, similar to the "
695 "CIM_Sensor properties in the Device Model."),
696 MappingStrings {
697 "Recommendation.ITU|X733.Threshold information"} ]
698 string ThresholdValue;
699
700 [Description (
701 "A string holding the current reading value that exceeds the "
702 "threshold. This is modeled as a string for universal mapping, "
703 "similar to the CIM_Sensor properties in the Device Model."),
704 MappingStrings {
705 "Recommendation.ITU|X733.Threshold information"} ]
706 string ObservedValue;
707 };
708
709
710 // ====================================================================
711 // AlertInstIndication
712 // ====================================================================
713 [Indication, Version("2.6.0"), Description (
714 "A subclass of CIM_AlertIndication that embeds a CIM_Inst"
715 kumpf 1.3 "Indication. It is used when adding AlertIndication data to a "
716 "LifeCycle Indication.") ]
717 class CIM_AlertInstIndication : CIM_AlertIndication {
718
719 [Override ("AlertType"), Description (
720 "The primary classification of the Indication, defaulted "
721 "to 7, \"Model Change\", for this class. This is done "
722 "because: 1) the primary purpose of AlertInstIndication is "
723 "to add Alert data to a LifeCycle Indication; and 2) LifeCycle "
724 "Indications deal with 'model changes'.") ]
725 uint16 AlertType = 7;
726
727 [EmbeddedObject, Required, Description (
728 "Embeds the InstIndication that is part of this Alert"
729 "Indication. Only the properties selected by the Indication"
730 "Filter's Query are included.") ]
731 string IndObject;
732 };
733
734
735 // ====================================================================
736 kumpf 1.3 // IndicationFilter
737 // ====================================================================
738 [Version("2.6.0"), Description (
739 "CIM_IndicationFilter defines the criteria for generating an "
740 "Indication and what data should be returned in the Indication. "
741 "It is derived from CIM_ManagedElement to allow modeling the "
742 "dependency of the filter on a specific service.") ]
743 class CIM_IndicationFilter: CIM_ManagedElement {
744
745 [Key, MaxLen (256), Description (
746 "A System's CreationClassName. The Filter is defined in the "
747 "context of a CIM_System, where it is hosted or to which it "
748 "applies. In a future release, a weak relationship will be "
749 "explicitly added to the model. This is not done now to allow "
750 "further refinement of the Filter definition and its "
751 "inheritance tree. Keys are defined now to allow the class to "
752 "be instantiated.") ]
753 string SystemCreationClassName;
754
755 [Key, MaxLen (256), Description (
756 "A System's Name. The Filter is defined in the "
757 kumpf 1.3 "context of a CIM_System, where it is hosted or to which it "
758 "applies. In a future release, a weak relationship will be "
759 "explicitly added to the model. This is not done now to allow "
760 "further refinement of the Filter definition and its "
761 "inheritance tree. Keys are defined now to allow the class to "
762 "be instantiated.") ]
763 string SystemName;
764
765 [Key, MaxLen (256), Description (
766 "Indicates the name of the class or the subclass used in the "
767 "creation of an instance. When used with the other key "
768 "properties of this class, it allows all instances of this "
769 "class and its subclasses to be uniquely identified.") ]
770 string CreationClassName;
771
772 [Key, Description (
773 "The name of the filter.") ]
774 string Name;
775
776 [Description (
777 "The path to a local namespace where the Indications "
778 kumpf 1.3 "originate. If NULL, the namespace of the Filter registration "
779 "is assumed.") ]
780 string SourceNamespace;
781
782 [Required, Description (
783 "A query expression that defines the condition(s) under which "
784 "Indications will be generated. For some Indication classes, "
785 "the query expression may also define the instance properties "
786 "to be copied to the CIM_InstIndication's SourceInstance and "
787 "PreviousInstance properties. Query language semantics include "
788 "projection (e.g., Select), range (e.g., From) and predicate "
789 "(e.g., Where)."),
790 ModelCorrespondence {"CIM_IndicationFilter.QueryLanguage"} ]
791 string Query;
792
793 [Required, Description (
794 "The language in which the query is expressed.") ]
795 string QueryLanguage;
796 };
797
798
799 kumpf 1.3 // ====================================================================
800 // IndicationHandler
801 // ====================================================================
802 [Abstract, Version("2.7.0"), Description (
803 "CIM_IndicationHandler is an abstract superclass describing how "
804 "an Indication is to be processd/delivered/'handled'. This may "
805 "define a destination and protocol for delivering Indications, "
806 "or it may define a process to invoke. This class is derived "
807 "from CIM_ManagedElement to allow modeling the "
808 "dependency of the Handler on a specific service.") ]
809 class CIM_IndicationHandler : CIM_ManagedElement {
810
811 [Key, MaxLen (256), Description (
812 "A System's CreationClassName. The Handler is defined in the "
813 "context of a CIM_System, where it is hosted or to which it "
814 "applies. In a future release, a weak relationship will be "
815 "explicitly added to the model. This is not done now to allow "
816 "further refinement of the Handler definition and its "
817 "inheritance tree. Keys are defined now to allow the class to "
818 "be instantiated.") ]
819 string SystemCreationClassName;
820 kumpf 1.3
821 [Key, MaxLen (256), Description (
822 "A System's Name. The Handler is defined in the "
823 "context of a CIM_System, where it is hosted or to which it "
824 "applies. In a future release, a weak relationship will be "
825 "explicitly added to the model. This is not done now to allow "
826 "further refinement of the Handler definition and its "
827 "inheritance tree. Keys are defined now to allow the class to "
828 "be instantiated.") ]
829 string SystemName;
830
831 [Key, MaxLen (256), Description (
832 "Indicates the name of the class or the subclass used in the "
833 "creation of an instance. When used with the other key properties "
834 "of this class, it allows all instances of this class "
835 "and its subclasses to be uniquely identified.") ]
836 string CreationClassName;
837
838 [Key, MaxLen (256), Description (
839 "Indicates the name of this Handler.") ]
840 string Name;
841 kumpf 1.3
842 [Description (
843 "The name of the entity that created and/or maintains this "
844 "Handler.") ]
845 string Owner;
846
847 [Description (
848 "Describes the Persistence Type of the destination defined "
849 "by this instance. If the value of PersistenceType is not "
850 "set, the value of PersistenceType MUST be treated as "
851 "2 (\"Permanent\"). A value of 2 (\"Permanent\") declares "
852 "that the destination is always expected to be available "
853 "(e.g., system log file). Inability to access this "
854 "destination MUST be treated as an error condition. "
855 "A value of 3 (\"Transient\") indicates that the "
856 "destination is short-lived. Inability to access the "
857 "destination MAY be treated as a normal termination "
858 "condition. Subscriptions with \"Transient\" "
859 "destinations MAY be deleted when the destination "
860 "terminates or is no longer available."),
861 ValueMap {"1", "2", "3"},
862 kumpf 1.3 Values {"Other", "Permanent", "Transient"},
863 ModelCorrespondence {
864 "CIM_IndicationHandler.OtherPersistenceType"} ]
865 uint16 PersistenceType;
866
867 [Description (
868 "A string describing (\"Other\") values for PersistenceType. "
869 "This value MUST be set to a non NULL value when the "
870 "PersistenceType is 1 (\"Other\"). For all other values of "
871 "PersistenceType, the value of OtherPersistenceType "
872 "MUST be NULL."),
873 ModelCorrespondence {"CIM_IndicationHandler.PersistenceType"} ]
874 string OtherPersistenceType;
875 };
876
877
878 // ====================================================================
879 // IndicationHandlerCIMXML
880 // ====================================================================
881 [Version("2.6.0"), Description (
882 "CIM_IndicationHandlerCIMXML describes the destination for "
883 kumpf 1.3 "Indications to be delivered via CIM-XML.") ]
884 class CIM_IndicationHandlerCIMXML : CIM_IndicationHandler {
885
886 [Required, Description (
887 "The destination URL to which CIM-XML Indication messages "
888 "are to be delivered. The scheme prefix MUST be consistent "
889 "with the DMTF CIM-XML Specifications. If a scheme prefix "
890 "is not specified, the scheme \"http:\" MUST be assumed.") ]
891 string Destination;
892 };
893
894
895 // ===================================================================
896 // IndicationSubscription
897 // ===================================================================
898 [Association, Version("2.7.0"), Description (
899 "CIM_IndicationSubscription describes a flow of Indications. "
900 "The flow is specified by the referenced Filter, and directed to "
901 "the referenced destination or process in the Handler. "
902 "Property values of the referenced CIM_IndicationFilter instance "
903 "and CIM_IndicationHandler instance MAY significantly effect the "
904 kumpf 1.3 "definition of the subscription. E.g., a subscription associated "
905 "with a \"Transient\" destination MAY be deleted when the "
906 "destination terminates or is no longer available.") ]
907 class CIM_IndicationSubscription {
908
909 [Key, Description (
910 "The Filter that defines the criteria and data of the "
911 "possible Indications of this subscription.") ]
912 CIM_IndicationFilter REF Filter;
913
914 [Key, Description (
915 "The Handler addressing delivery of the possible Indications "
916 "of this subscription.") ]
917 CIM_IndicationHandler REF Handler;
918
919 [Description (
920 "Defines the desired behavior for a subscription when a "
921 "fatal error occurs in one of the Indication processing "
922 "subcomponents (e.g., Indication processor, Indication "
923 "or instance provider, or Indication handler) and the "
924 "Indication cannot be successfully sent. Specifically, a "
925 kumpf 1.3 "failure implies that some aspect of Indication generation,"
926 "processing or dispatch is no longer functioning and "
927 "Indications may be lost. If the value of OnFatalErrorPolicy "
928 "is 2 (\"Ignore\") or not set (NULL), the subscription MUST "
929 "continue to be processed in a 'best effort' mode. This "
930 "mode of operation can lead to unpredictable, and potentially "
931 "misleading results, because Indications may be lost. If the "
932 "value is 3 (\"Disable\"), the subscription MUST be disabled. "
933 "With this policy, no new Indications will be generated or "
934 "dispatched until the subscription is explicitly enabled. "
935 "This is accomplished via the property, SubscriptionState."
936 "If the value is 4 (\"Remove\"), the subscription MUST be "
937 "deleted. Selecting this policy has the same effect as issuing "
938 "a DeleteInstance operation on this subscription instance."),
939 ValueMap {"1", "2", "3", "4"},
940 Values {"Other", "Ignore", "Disable", "Remove"} ]
941 uint16 OnFatalErrorPolicy;
942
943 [Description ("A string defining \"Other\" "
944 "values for OnFatalErrorPolicy. This value MUST "
945 "be set to a non NULL value when OnFatalErrorPolicy "
946 kumpf 1.3 "is set to a value of 1 (\"Other\"). For all other values, "
947 "the OtherOnFatalErrorPolicy MUST be NULL.") ]
948 string OtherOnFatalErrorPolicy;
949
950 [Description (
951 "The FailureTriggerTimeInterval is used by the client to "
952 "specify a recommended minimum delay before the "
953 "OnFatalErrorPolicy is implemented."),
954 Units ("Seconds") ]
955 uint64 FailureTriggerTimeInterval;
956
957 [Write, Description (
958 "Indicates the current processing state of the subscription. "),
959 ValueMap {"0", "1", "2", "3", "4"},
960 Values {"Unknown", "Other", "Enabled", "Enabled Degraded",
961 "Disabled"} ]
962 uint16 SubscriptionState;
963
964 [Description ("A string defining \"Other\" "
965 "values for SubscriptionState. This value MUST "
966 "be set to a non NULL value when SubscriptionState "
967 kumpf 1.3 "is set to a value of 1 (\"Other\"). For all other values, "
968 "the OtherSubscriptionState MUST be NULL.") ]
969 string OtherSubscriptionState;
970
971 [Description (
972 "Date and time of the last state change. This value is based "
973 "on the notion of local date and time of the Managed System "
974 "Element running the Indication processing subcomponents.") ]
975 datetime TimeOfLastStateChange;
976
977 [Write, Description (
978 "SubscriptionDuration defines the desired length of the "
979 "subscription. Indications generated after the duration of "
980 "the subscription has exceeded SubscriptionDuration MUST "
981 "NOT be sent. The duration of a subscription MAY be changed "
982 "by modifying this property. An expired subscription MAY be "
983 "deleted and MUST NOT be modified. If the value of"
984 "SubscriptionDuration is not set, the subscription MUST "
985 "be treated as having no expiration date. "),
986 Units ("Seconds") ]
987 uint64 SubscriptionDuration;
988 kumpf 1.3
989 [Write (false), Description (
990 "SubscriptionStartTime is the time the subscription was "
991 "started. The value of this property is computed based on "
992 "the notion of date and time of the ManagedSystemElement "
993 "running the Indication processing subcomponents.") ]
994 datetime SubscriptionStartTime;
995
996 [Write (false), Description (
997 "SubscriptionTimeRemaining is a computed value that"
998 "provides a snapshot of the time remaining in the"
999 "Subscription."), Units ("Seconds") ]
1000 uint64 SubscriptionTimeRemaining;
1001
1002 [Description (
1003 "The RepeatNotificationPolicy property defines "
1004 "the desired behavior for handling Indications that "
1005 "report the occurrence of the same underlying event "
1006 "(e.g., the disk is still generating I/O errors and "
1007 "has not yet been repaired). The defined semantics for "
1008 "the RepeatNotificationCount, RepeatNotificationInterval, "
1009 kumpf 1.3 "and RepeatNotificationGap properties depend on the "
1010 "value of RepeatNotificationPolicy, but values for these "
1011 "properties MUST be set if the property is defined for "
1012 "the selected policy. If the value of "
1013 "RepeatNotificationPolicy is 0 (\"Unknown\") or not set, "
1014 "no special processing for repeat Indications is defined "
1015 "by the subscription. The semantics associated with "
1016 "the handling of repeat Indications MAY be defined by "
1017 "the Indication processing subcomponents. "
1018 "If the value of RepeatNotificationPolicy is 2 "
1019 "(\"None\"), special processing of repeat Indications "
1020 "MUST NOT be performed. If the value is 3 (\"Suppress\") "
1021 "the first RepeatNotificationCount Indications, "
1022 "describing the same event, MUST be sent and all "
1023 "subsequent Indications for this event suppressed for the "
1024 "remainder of the time interval RepeatNotificationInterval. "
1025 "A new interval starts when the next Indication for this "
1026 "event is received. If the value of RepeatNotificationPolicy "
1027 "is 4 (\"Delay\") and an Indication is received, this "
1028 "Indication MUST be suppressed if, including this Indication, "
1029 "RepeatNoticationCount or fewer Indications for this "
1030 kumpf 1.3 "event have been received during the prior time interval "
1031 "defined by RepeatNotificationInterval. If this "
1032 "Indication is the RepeatNotificationCount + 1 Indication, "
1033 "this Indication MUST be sent and all subsequent "
1034 "Indications for this event ignored until the "
1035 "RepeatNotificationGap has elapsed. "
1036 "A RepeatNotificationInterval MAY NOT overlap "
1037 "a RepeatNotificationGap time interval."),
1038 ValueMap {"0", "1", "2", "3", "4"},
1039 Values {"Unknown", "Other", "None", "Suppress", "Delay"} ]
1040 uint16 RepeatNotificationPolicy;
1041
1042 [Description (
1043 "A string defining \"Other\" "
1044 "values for RepeatNotificationPolicy. This value MUST "
1045 "be set to a non NULL value when RepeatNotificationPolicy "
1046 "is set to a value of 1 (\"Other\"). For all other values, "
1047 "the OtherRepeatNotificationPolicy MUST be NULL.") ]
1048 string OtherRepeatNotificationPolicy;
1049
1050 [Description (
1051 kumpf 1.3 "Defines the time interval for the repeat "
1052 "notification policy calculation."),
1053 Units ("Seconds") ]
1054 uint64 RepeatNotificationInterval;
1055
1056 [Description (
1057 "Defines the gap interval for the repeat "
1058 "notification policy calculation."),
1059 Units ("Seconds") ]
1060 uint64 RepeatNotificationGap;
1061
1062 [Description (
1063 "Defines the count property for the repeat "
1064 "notification policy calculation.") ]
1065 uint16 RepeatNotificationCount;
1066 };
1067
1068
1069 // ==================================================================
1070 // end of file
1071 // ==================================================================
|