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

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

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2