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