(file) Return to CIM_Metrics26.mof CVS log (file) (dir) Up to [Pegasus] / pegasus / Schemas / CIM26

  1 karl  1.2 // ==================================================================
  2           // Title:  	    Metrics MOF Specification 2.6
  3           // Filename:    CIM_Metrics26.MOF
  4           // Version      2.6.0
  5           // Status:      Final
  6           // Date:        06/04/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.2 // 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.2 // ===================================================================
 44           // Description: This Schema includes the object classes required to model
 45           //		the CIM Metrics Schema, specifically the concepts of
 46           //		UnitOfWork (executing and definitional), the metrics 
 47           //          associated with UnitsOfWork, and the relationships necessary
 48           //		to associate defintions and metrics to an executing 
 49           //          UnitOfWork and to associate UnitsOfWork to 
 50           //          LogicalElements.
 51           //
 52           //          The object classes below are listed in an order that
 53           //          avoids forward references. Required objects, defined 
 54           //		by other working groups, are omitted. 
 55           // ===================================================================
 56           //    CIM 2.6.0 (Final) Feb 15 2002
 57           //       CR636 - Replaced the Weak Qualifier from the association 
 58           //          StartedUoW that was removed in error in Version 2.5
 59           //	   CR746- Add Version Qualifier to all classes with version 2.6.0
 60           // 		per TC agreement to start versioning in 2.6 Final.
 61           //    CIM 2.6.0 Preliminary and earlier change definitions (May 2001)
 62           //         Fixed UnitOfWork.UoWDefId Propagated qualifier class name
 63           //         Removed the Weak qualifier from the association StartedUoW
 64 karl  1.2 //         Fixed some descriptions
 65           //         Removed Required qualifier from MetricDefinition.Name,
 66           //              UnitOfWorkDefinition.Name, UnitOfWorkDefinition.Context
 67           //         --> (the rest of this list were changes made 01 Feb 2000 but
 68           //         -->  not incorporated into DAP24.MOF due to an oversight)
 69           //	   Fixed pragma Locale string
 70           //         Corrected subclassing of CIM_MetricDefinition and 
 71           //		CIM_UnitOfWork (now subclassed from CIM_ManagedElement)
 72           //	   Fixed grammatical and formatting errors in Descriptions
 73           //	   Provided information in Descriptions on why associations 
 74           //		were defined as Dependencies 
 75           //	   Provided Descriptions where they were missing
 76           //	   Added MaxLen (16) to String Id in UnitOfWorkDefinition
 77           //		and in MetricDefinition, to enforce the semantics of 
 78           //		the Description
 79           //	   Also added MaxLen (16) to UoWDefId, where the UnitOf
 80           //		WorkDefinition Id property is propagated to UnitOfWork	
 81           //	   Removed the Weak qualifier from the association, 
 82           //		UoWMetricDefinition, and also the Max (1) restriction
 83           //		(the latter allows reuse of Metrics)
 84           //	   Removed Min (0) from the association, SubUoW, since this
 85 karl  1.2 //		is the default definition
 86           // ==================================================================
 87           
 88           // ==================================================================
 89           // Pragmas
 90           // ==================================================================
 91           #pragma Locale ("en_US")
 92           
 93           // ================================================================== 
 94           // UnitOfWorkDefinition
 95           // ==================================================================
 96              [Version("2.6.0"), Description (
 97                  "A LogicalElement that describes units of work (e.g. "
 98                  "transactions). This class represents the definitional "
 99                  "components of a unit of work, and not the unit itself.") ]
100           class CIM_UnitOfWorkDefinition : CIM_LogicalElement {
101                 [Override ("Name"), 
102                  Description (
103                     "The name of the Definition. This name does not have to "
104                     "be unique, but should be descriptive. It may "
105                     "contain blanks.") ]
106 karl  1.2    string Name;
107                 [Description (
108                     "A free format string describing the context of the "
109                     "defined UnitOfWork. For example an 'Add Order' Unit could "
110                     "be defined in the context of a book ordering application, "
111                     "whereas another 'Add Order' UnitOfWork could be defined for "
112                     "a computer ordering application. It may contain blanks.") ]
113              string Context;
114                 [Key, MaxLen (16),
115                  Description (
116                     "A 16 byte value that uniquely identifies the UnitOfWork"
117                     "Definition. The use of OSF UUID/GUIDs is recommended.") ]
118              string Id;
119           };
120           
121           
122           // ================================================================== 
123           // MetricDefinition
124           // ==================================================================
125              [Version("2.6.0"), Description (
126                  "The metrics that are associated with a UnitOfWork. These "
127 karl  1.2        "metrics usually describe some aspect of a UnitOfWork such "
128                  "as how much work was done, or the size of the UnitOfWork. "
129                  "For example, the size of a print job or the number of pages "
130                  "printed could be metrics of a 'print' UnitOfWork.") ]
131           class CIM_MetricDefinition : CIM_ManagedElement {
132                 [Key, MaxLen (16),
133           	 Description (
134                     "A 16 byte value that uniquely identifies the Metric"
135                     "Definition. The use of OSF UUID/GUIDs is recommended.") ]
136              string Id;
137                 [Description (
138                     "The name of the Definition.  This name does not have to "
139                     "be unique, but should be descriptive.  It may "
140                     "contain blanks.") ]
141              string Name;
142                 [Description (
143                     "The Metric's data type. For example, \"boolean\" (value=1) "
144                     "or \"datetime\" (=3) may be specified."),  
145           	 ValueMap {"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", 
146                     "11", "12", "13", "14"},
147           	 Values {"boolean", "char16", "datetime", "real32", "real64", 
148 karl  1.2           "sint16", "sint32", "sint64", "sint8", "string", "uint16", 
149                     "uint32", "uint64", "uint8"} ]
150              uint16 DataType;
151                 [Description (
152                      "An enumerated value that describes the characteristics "
153                      "of the Metric, for purposes of performing calculations. "
154                      "The property can take one of the following values: \n"
155                      "1=\"Non-calculable\" -> a string. Arithmetic makes no "
156                      "sense. \n"
157                      "2=\"Summable\" -> It is reasonable to sum this value over "
158                      "many instances of UnitOfWork, such as the number of files "
159                      "processed in a backup job. For example, if each backup "
160                      "job is a UnitOfWork, and each job backs up 27,000 files on "
161                      "average, then it makes sense to say that 100 backup jobs "
162                      "processed 2,700,000 files. \n"
163                      "3=\"Non-summable\" -> It does not make sense to sum this "
164                      "value over many instances of UnitOfWork. An example would be "
165                      "a metric that measures the queue length when a job arrives "
166                      "at a server. If each job is a UnitOfWork, and the average "
167                      "queue length when each job arrives is 33, it does not make "
168                      "sense to say that the queue length for 100 jobs is 3300. It "
169 karl  1.2            "does make sense to say that the mean is 33."),
170                  ValueMap {"1", "2", "3"},
171                  Values {"Non-calculable", "Summable", "Non-summable"} ]
172              uint16 Calculable;
173                 [Description (
174                     "Identifies the specific units of the Metric. Examples are "
175                     "Bytes, Packets, Jobs, Files, Milliseconds and Amps.") ]
176              string Units;
177                 [Description (
178                     "An enumerated value describing when the Metric may be "
179                     "considered valid. Some metrics are valid only at the "
180                     "beginning of a transaction (e.g., bytes to print), while "
181                     "the transaction is running (e.g., percent complete), or "
182                     "when the transaction is finished (e.g., pages printed). "
183                     "If a metric is valid at more than one of the enumerated "
184                     "values, such as both when the unit of work starts and "
185                     "when it stops, it is recommended to not use Validity."),
186                  ValueMap {"1", "2", "3"},
187                  Values {"AtStart", "InMiddle", "AtStop"} ] 
188              uint16 Validity;
189           };
190 karl  1.2 
191           
192           // ================================================================== 
193           // UoWMetricDefinition
194           // ==================================================================
195              [Association, Version("2.6.0"),
196               Description (
197                  "An association that describes the Metrics related to a "
198                  "UnitOfWorkDefinition. This is a Dependency "
199                  "relationship since the MetricDefinition relies on the "
200                  "UnitOfWorkDefinition for context. At least one context must "
201                  "be defined for a MetricDefinition, hence the Min (1) "
202                  "qualifier is placed on the UnitOfWorkDefinition reference.") ]
203           class CIM_UoWMetricDefinition : CIM_Dependency {
204                 [Override ("Antecedent"), Min (1),
205                  Description (
206                    "The UnitOfWorkDefinition where the Metric applies.") ] 
207              CIM_UnitOfWorkDefinition REF Antecedent;
208                 [Override ("Dependent"),
209                  Description (
210                    "The MetricDefinition for a particular UnitOfWork.") ] 
211 karl  1.2    CIM_MetricDefinition REF Dependent;
212           };
213           
214           
215           // ================================================================== 
216           // UnitOfWork
217           // ==================================================================
218              [Version("2.6.0"), Description (
219                  "Each instance of UnitOfWork identifies a transaction that is "
220                  "either in-process or already completed. Because instances of "
221                  "'in-process' UnitsOfWork can be very short-lived and there can "
222                  "be a great number of active ones, use of this class as an " 
223                  "instrumentation source for determining response time may be "
224                  "incorrect or inefficient, unless the rate and duration of the "
225                  "UnitsOfWork are known. The intended use is to respond to queries "
226                  "about currently active or recently completed UnitsOfWork. "
227                  "The length of time that a UnitOfWork instance exists after the "
228                  "UnitOfWork completes is not defined and should be assumed to be "
229                  "implementation-dependent. This class is weak to its "
230                  "definition (CIM_UnitOfWorkDefintion).") ] 
231           class CIM_UnitOfWork : CIM_ManagedElement {
232 karl  1.2 	[Override ("Description"),
233                  Description (
234                     "Since UnitOfWork is designed to be an extremely lightweight "
235                     "object, it is recommended that this property not be used. "
236                     "The Description specified for the instance's associated "
237                     "CIM_UnitOfWorkDefintion should apply.") ] 
238              string Description;
239                 [Key, Description (
240                     "The identifier of the UnitOfWork, within the context of the "
241                     "UnitOfWorkDefinition.") ] 
242              sint64 Id;
243                 [Key, MaxLen (16), 
244                  Propagated ("CIM_UnitOfWorkDefinition.Id"),
245                  Description (
246                     "A 16 byte value that uniquely identifies the UnitOfWork"
247                     "Definition. The use of OSF UUID/GUIDs is recommended.") ]
248              string UoWDefId;
249                 [Description (
250                     "The name of the user who initiated the UnitOfWork. This "
251                     "may be a real user's login name or a logical name representing "
252                     "an application.") ] 
253 karl  1.2    string UserName;
254                 [Description ("The time that the UnitOfWork was started.") ] 
255              datetime StartTime;
256                 [Description (
257                     "The elapsed time since the UnitOfWork was started. "
258                     "Upon completion of the UnitOfWork, this property contains "
259                     "the total amount of time taken in processing the entire "
260                     "UnitOfWork.") ] 
261              datetime ElapsedTime;
262             	[Description (
263           	    "An enumeration identifing the status of the UnitOfWork. "
264           	    "Most of the property values are self-explanatory. A few need "
265           	    "additional text: \n"
266                     "3=\"Completed\" - Should be used to represent a 'completed' "
267                     "transaction whose status ('good', 'failed' or 'aborted') is "
268                     "unknown. \n"
269                     "6=\"Completed Aborted\" - Should be used when a UnitOfWork "
270                     "has completed but was not allowed to end normally. An example "
271                     "would be when the Stop or Back buttons are selected from a web "
272                     "browser, before a page is fully loaded."),
273           	   ValueMap {"1", "2", "3", "4", "5", "6"},
274 karl  1.2 	   Values {"Active", "Suspended", "Completed", "Completed Good",
275                     "Completed Failed", "Completed Aborted"} ]
276              uint16 Status;
277           };
278           
279           
280           // ================================================================== 
281           // UoWMetric
282           // ==================================================================
283              [Association,  Version("2.6.0"),
284               Description (
285                  "This association ties a MetricDefinition to an instance of a "
286                  "UnitOfWork. Its primary purpose is to specify the value of "
287                  "the Metric for the instance of UnitOfWork. It is defined as a "
288                  "Dependency since the Metric value relies on the specific "
289                  "UnitOfWork for context.") ]
290           class CIM_UoWMetric : CIM_Dependency {
291                 [Override ("Antecedent"),
292                  Description (
293                     "The UnitOfWork whose Metric value is specified.") ] 
294              CIM_UnitOfWork REF Antecedent;
295 karl  1.2       [Override ("Dependent"),
296                  Description (
297                     "The MetricDefinition for this particular UnitOfWork and "
298                     "value. Note that the MetricDefinition must be associated "
299                     "(via UoWMetricDefinition) to the same UnitOfWorkDefinition "
300                     "to which the UnitOfWork is weakly associated.") ] 
301              CIM_MetricDefinition REF Dependent;
302                 [Description (
303                     "The value of the Metric for the referenced UnitOfWork. "
304                     "Note that the type of the data and other information are "
305                     "defined by the properties of MetricDefinition.") ]
306              string Value;
307           };
308           
309           
310           // ================================================================== 
311           // StartedUoW
312           // ==================================================================
313              [Association, Version("2.6.0"),
314               Description (
315                  "This association links a UnitOfWork (which is a 'started' "
316 karl  1.2        "transaction) to its Definition.") ]
317           class CIM_StartedUoW : CIM_Dependency {
318           	[Override ("Antecedent"),
319                  Min (1), Max (1),
320                  Description ("The Definition object for the UnitOfWork.") ] 
321              CIM_UnitOfWorkDefinition REF Antecedent;
322                 [Override ("Dependent"),
323                  Weak, Description (
324                     "An instance of a UnitOfWork that has started executing.") ] 
325              CIM_UnitOfWork REF Dependent;
326           };
327           
328           
329           // ================================================================== 
330           // LogicalElementUnitOfWorkDef
331           // ==================================================================
332              [Association, Version("2.6.0"),
333               Description (
334                  "This association links a LogicalElement to the UnitsOfWork "
335                  "that it can perform.  For example, a Printer Device may have "
336                  "associated UnitOfWorkDefinitions representing PrintJobs. "
337 karl  1.2        "This is a Dependency relationship since the Definitions are "
338                  "given context by the LogicalElement.") ]
339           class CIM_LogicalElementUnitOfWorkDef : CIM_Dependency {
340                 [Override ("Antecedent"),
341                  Description (
342                     "The LogicalElement that is providing the UnitOfWork.") ] 
343              CIM_LogicalElement REF Antecedent;
344                 [Override ("Dependent"),
345                  Description (
346                     "The UnitOfWorkDefinition associated with the "
347                     "LogicalElement.") ] 
348              CIM_UnitOfWorkDefinition REF Dependent;
349           };
350           
351           
352           // ================================================================== 
353           // SubUoWDef
354           // ==================================================================
355              [Association, Version("2.6.0"),
356               Description (
357                  "This association defines the sub-UnitsOfWork (the sub-"
358 karl  1.2        "transactions) for a particular UnitOfWorkDefinition. For "
359                  "example, an 'AddOrder' UnitOfWork could have sub-Units of "
360                  "'ValidateCustomer', 'ValidatePartNumber', 'UpdateDatabase', "
361                  "etc. This is a Dependency relationship since the sub-UnitsOf"
362                  "Work are put in context relative to the parent Unit. It is "
363                  "not an aggregation relationship - since (using another example) "
364                  "a 'DatabaseWrite' transaction is likely to be dependent upon a "
365                  "'DiskWrite', but the two transactions are separate concepts "
366                  "and one is not 'contained' by the other.") ]
367           class CIM_SubUoWDef : CIM_Dependency {
368                 [Override ("Antecedent"),
369                  Description ("The parent UnitOfWorkDefinition.") ] 
370              CIM_UnitOfWorkDefinition REF Antecedent;
371                 [Override ("Dependent"),
372                  Description ("The sub-UnitOfWorkDefinition.") ] 
373              CIM_UnitOfWorkDefinition REF Dependent;
374           };
375           
376           
377           // ================================================================== 
378           // LogicalElementPerformsUoW
379 karl  1.2 // ==================================================================
380              [Association, Version("2.6.0"),
381               Description (
382                  "This association identifies a specific execution of a UnitOf"
383                  "Work with the specific LogicalElement that is performing/"
384                  "has performed it. Where the LogicalElementUnitOfWorkDef "
385                  "association describes what an Element can do, this relationship "
386                  "describes what a particular Element is doing or has done.") ]
387           class CIM_LogicalElementPerformsUoW : CIM_Dependency {
388                 [Override ("Antecedent"),
389                  Description (
390                     "The LogicalElement performing the UnitOfWork.") ] 
391              CIM_LogicalElement REF Antecedent;
392                 [Override ("Dependent"),
393                  Description ("The UnitOfWork being performed.") ] 
394              CIM_UnitOfWork REF Dependent;
395           };
396           
397           // ================================================================== 
398           // SubUoW
399           // ==================================================================
400 karl  1.2    [Association, Version("2.6.0"),
401               Description (
402                  "Similar to the SubUoWDef association (which describes the "
403                  "relationship between definitional UnitsOfWork), this "
404           	 "association identifies the executional UnitOfWork "
405                  "Dependencies.  It associates executing/executed UnitsOfWork "
406                  "with their parent Units. In most cases, the SubUoW reflects "
407                  "the execution side of the relationship defined in SubUoWDef. "
408                  "However, there may be cases where the SubUoWDef is not defined, "
409                  "but for a particular UnitOfWork, the SubUoW relationship is "
410                  "valid. Therefore, it is not a requirement (but it is "
411                  "desirable) that there be a corresponding SubUoWDef for each "
412                  "instance of SubUoW.") ]
413           class CIM_SubUoW : CIM_Dependency {
414                 [Override ("Antecedent"), Max (1), 
415                  Description (
416                     "The parent executing/executed UnitOfWork. On the execution "
417                     "side, it is expected that a sub-Unit is associated with only "
418                     "one parent UnitOfWork.") ] 
419              CIM_UnitOfWork REF Antecedent;
420                 [Override ("Dependent"),
421 karl  1.2        Description (
422                     "The sub-UnitOfWork. On the execution side, it is expected "
423                     "that a sub-Unit is associated with only one parent "
424                     "UnitOfWork.") ] 
425              CIM_UnitOfWork REF Dependent;
426           };
427           
428           // ===================================================================
429           // end of file
430           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2