# Class CIM_MetricService
extends CIM_Service

CIM_MetricService provides the ability to manage metrics. For each metric that the service manages, there shall be an instance of CIM_ServiceAffectsElement that associates the CIM_MetricService to the instance of CIM_BaseMetricDefinition that defines the metric, where the value of the CIM_ServiceAffectsElement.ElementAffects property is 5 "Manages". The capabilities of the CIM_MetricService instance are advertised through an instance of CIM_MetricServiceCapabilities associated with the CIM_MetricService instance through CIM_ElementCapabilities.

### Table of Contents
Hierarchy
Direct Known Subclasses
Class Qualifiers
Class Properties
Class Methods

## Class Hierarchy

CIM_ManagedElement
|
+--CIM_ManagedSystemElement
|
+--CIM_LogicalElement
|
+--CIM_EnabledLogicalElement
|
+--CIM_Service
|
+--CIM_MetricService

## Direct Known Subclasses

## Class Qualifiers

Name | Data Type | Value
--- | --- | ---
Description | string | CIM_MetricService provides the ability to manage metrics. For each metric that the service manages, there shall be an instance of CIM_ServiceAffectsElement that associates the CIM_MetricService to the instance of CIM_BaseMetricDefinition that defines the metric, where the value of the CIM_ServiceAffectsElement.ElementAffects property is 5 "Manages". The capabilities of the CIM_MetricService instance are advertised through an instance of CIM_MetricServiceCapabilities associated with the CIM_MetricService instance through CIM_ElementCapabilities.
UMLPackagePath | string | CIM::Metrics::BaseMetric
Version | string | 2.23.0

## Class Properties

### Inherited Properties

Name | Data Type | Class Origin
--- | --- | ---
Caption | string | CIM_ManagedElement
CommunicationStatus | uint16 | CIM_ManagedSystemElement
CreationClassName | string | CIM_Service
Description | string | CIM_ManagedElement
DetailedStatus | uint16 | CIM_ManagedSystemElement
ElementName | string | CIM_ManagedElement
EnabledDefault | uint16 | CIM_EnabledLogicalElement
EnabledState | uint16 | CIM_EnabledLogicalElement
HealthState | uint16 | CIM_ManagedSystemElement
InstallDate | datetime | CIM_ManagedSystemElement
InstanceID | string | CIM_ManagedElement
Name | string | CIM_Service
OperatingStatus | uint16 | CIM_ManagedSystemElement
OtherEnabledState | string | CIM_EnabledLogicalElement
PrimaryOwnerContact | string | CIM_Service
PrimaryOwnerName | string | CIM_Service
PrimaryStatus | uint16 | CIM_ManagedSystemElement
RequestedState | uint16 | CIM_EnabledLogicalElement
Started | boolean | CIM_Service
StartMode | string | CIM_Service
Status | string | CIM_ManagedSystemElement
SystemCreationClassName | string | CIM_Service
SystemName | string | CIM_Service
TimeOfLastStateChange | datetime | CIM_EnabledLogicalElement
TransitioningToState | uint16 | CIM_EnabledLogicalElement
AvailableRequestedStates | uint16[] | CIM_EnabledLogicalElement
OperationalStatus | uint16[] | CIM_ManagedSystemElement
StatusDescriptions | string[] | CIM_ManagedSystemElement

## Class Methods

### Local Class Methods

#### ShowMetrics (uint32)

#### Method Qualifiers (ShowMetrics)

Name | Data Type | Value
--- | --- | ---
Description | string | ShowMetrics reports the Metrics available to be collected for a ManagedElement, the ManagedElements for which a metric defined by an instance of CIM_BaseMetricDefinition is available to be collected, and whether or not a particular metric is currently being collected for a ManagedElement. If the Subject parameter is specified and the Definition parameter is NULL, upon successful completion of the method, the DefinitionList[] parameter shall contain a reference to an instance of CIM_BaseMetricDefinition for each instance of CIM_BaseMetricDefinition to which the instance of CIM_ManagedElement identified by the Subject parameter is associated through CIM_MetricDefForME where the CIM_BaseMetricDefinition instance is associated to the CIM_MetricService instance through CIM_ServiceAffectsElement, the MetricCollectionEnabled parameter shall contain a value corresponding to the value of the MetricCollectionEnabled property of the instance of CIM_MetricDefForME that associates the CIM_ManagedElement identified by the Subject parameter with the CIM_BaseMetricDefinition for which a reference is returned in the DefinitionList parameter at the same array index. If the Definition parameter is non-NULL and the Subject parameter is NULL, upon successful completion of the method the ManagedElements parameter shall contain a reference to each CIM_ManagedElement instance to which the CIM_BaseMetricDefinition instance referenced by the Definition parameteris associated through CIM_MetricDefForME and the MetricCollectionEnabled parameter shall contain a value corresponding to the value of the MetricCollectionEnabled property of the instance of CIM_MetricDefForME that associates the CIM_BaseMetricDefinition identified by the Definition parameter with the CIM_ManagedElement for which a reference is returned in the ManagedElements parameter at the same array index as the reference to the CIM_ManagedElement. If the Subject parameter and Definition parameter are both non-NULL, the method shall return NULL values for the DefinitionList and ManagedElements parameters, and the MetricCollectionEnabled parameter shall contain a single value that corresponds to the value of the MetricCollectionEnabled property of the instance of CIM_MetricDefForME that associates the instance of CIM_ManagedElement identified by the Subject parameter with the instance of CIM_BaseMetricDefinition identified by the Definition parameter. If the Subject and Definition parameters are both NULL, the method shall return 2 "Failed". If the Definition parameter is a reference to an instance of CIM_BaseMetricDefinition that is not associated to the CIM_MetricService through CIM_ServiceAffectsElement, the method shall return 2 "Failed". If the Subject parameter does not identify a single instance the Method shall return 2 "Failed".
ValueMap | string | 0, 1, 2, .., 32768..65535
Values | string | Success, Not Supported, Failed, Method Reserved, Vendor Specific

#### Method Parameters (ShowMetrics)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
MetricCollectionEnabled | uint16[]
Description | string | The MetricCollectionEnabled parameter indicates whether a metric is being collected for a managed element.
IN | boolean | false
OUT | boolean | true
ValueMap | string | 2, 3, 4, .., 32768..65535
Values | string | Enable, Disable, Reserved, DMTF Reserved, Vendor Reserved
MetricNames | string[]
ArrayType | string | Indexed
Description | string | Upon successful completion of the method, each array index of the MetricNames parameter shall contain the value of the Name property for the instance of CIM_BaseMetricDefinition referenced by the corresponding array index of the DefinitionList parameter.
IN | boolean | false
ModelCorrespondence | string | CIM_MetricService.ShowMetrics.DefinitionList
OUT | boolean | true
DefinitionList | CIM_BaseMetricDefinition[]
ArrayType | string | Indexed
Description | string | Upon successful completion of the method, the DefinitionList parameter may contain references to instances of CIM_BaseMetricDefinitions that define metrics available for collection for the CIM_ManagedElement identified by the Subject parameter.
IN | boolean | false
ModelCorrespondence | string | CIM_MetricService.ShowMetrics.ManagedElements
OUT | boolean | true
ManagedElements | CIM_ManagedElement[]
ArrayType | string | Indexed
Description | string | Upon successful completion of the method, the ManagedElements[] parameter may contain references to CIM_ManagedElements for which the metric identified by Definition parameter is available for collection.
IN | boolean | false
ModelCorrespondence | string | CIM_MetricService.ShowMetrics.DefinitionList
OUT | boolean | true
Definition | REF CIM_BaseMetricDefinition
Description | string | The Definition parameter identifies an instance of CIM_BaseMetricDefintion. The method returns references to instances of CIM_ManagedElement for which metrics defined by the instance of CIM_BaseMetricDefinition are available to be collected.
IN | boolean | true
Subject | REF CIM_ManagedElement
Description | string | The Subject parameter identifies an instance of CIM_ManagedElement for which the method returns references to instances of CIM_BaseMetricDefinition that define metrics that are being captured for the CIM_ManagedElement.
IN | boolean | true

#### ShowMetricsByClass (uint32)

#### Method Qualifiers (ShowMetricsByClass)

Name | Data Type | Value
--- | --- | ---
Description | string | ShowMetricsByClass reports the Metrics available to be collected for all instances of a CIM class. The CIM classes for which a metric defined by an instance of CIM_BaseMetricDefinition is available to be collected, and whether or not a particular metric is currently being collected for a ManagedElement. If the Subject parameter is specified and the Definition parameter is NULL, upon successful completion of the method, the DefinitionList[] parameter shall contain a reference to an instance of CIM_BaseMetricDefinition for each instance of CIM_BaseMetricDefinition that is associated with all instances of the class identified by the Subject parameter, where the CIM_BaseMetricDefinition instance is associated to the CIM_MetricService instance through CIM_ServiceAffectsElement; the MetricCollectionEnabled parameter shall contain the value 2 "Enabled" if the value of the MetricCollectionEnabled property has the value 2 "Enabled" for every instance of CIM_MetricDefForME that associates the CIM_ManagedElement identified by the Subject parameter with the CIM_BaseMetricDefinition for which a reference CIM_BaseMetricDefinition is returned in the DefinitionList parameter at the same array index as the reference and the MetricCollectionEnabled parameter shall contain the value 3 "Disabled" if the value of the MetricCollectionEnabled property does not have the value 2 "Enabled" for every instance of CIM_MetricDefForME that associates the CIM_ManagedElement identified by the Subject parameter with the CIM_BaseMetricDefinition for which a reference CIM_BaseMetricDefinition is returned in the DefinitionList parameter at the same array index as the reference. If the Subject parameter and Definition parameter are both non-NULL, the method shall return NULL value for the DefinitionList parameter and the MetricCollectionEnabled parameter shall contain a single value that corresponds to the value of the MetricCollectionEnabled property of the instance of CIM_MetricDefForME that associates the instance of CIM_ManagedElement identified by the Subject parameter with the instance of CIM_BaseMetricDefinition identified by the Definition parameter. If the Subject and Definition parameters are both NULL, the method shall return 2 "Failed". If the Definition parameter is a reference to an instance of CIM_BaseMetricDefinition that is not associated to the CIM_MetricService through CIM_ServiceAffectsElement, the method shall return 2 "Failed". If the Subject parameter does not identify a single CIM Class the Method shall return 2 "Failed".
ValueMap | string | 0, 1, 2, .., 32768..65535
Values | string | Success, Not Supported, Failed, Method Reserved, Vendor Specific

#### Method Parameters (ShowMetricsByClass)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
MetricCollectionEnabled | uint16[]
Description | string | The MetricCollectionEnabled parameter indicates whether a metric is being collected for all instances of a class of managed elements.
IN | boolean | false
OUT | boolean | true
ValueMap | string | 2, 3, 4, .., 32768..65535
Values | string | Enabled, Disabled, Reserved, DMTF Reserved, Vendor Reserved
MetricNames | string[]
ArrayType | string | Indexed
Description | string | Upon successful completion of the method, each array index of the MetricNames parameter shall contain the value of the Name property for the instance of CIM_BaseMetricDefinition referenced by the corresponding array index of the DefinitionList parameter.
IN | boolean | false
ModelCorrespondence | string | CIM_MetricService.ShowMetricsByClass.DefinitionList
OUT | boolean | true
DefinitionList | CIM_BaseMetricDefinition[]
ArrayType | string | Indexed
Description | string | Upon successful completion of the method, the DefinitionList parameter may contain references to instances of CIM_BaseMetricDefinitions that define metrics available for collection for the CIM_ManagedElement identified by the Subject parameter.
IN | boolean | false
ModelCorrespondence | string | CIM_MetricService.ShowMetricsByClass.ManagedElements
OUT | boolean | true
Definition | REF CIM_BaseMetricDefinition
Description | string | The Definition parameter identifies an instance of CIM_BaseMetricDefinition. The method returns references to instances of CIM_ManagedElement for which metrics defined by the instance of CIM_BaseMetricDefinition are available to be collected.
IN | boolean | true
Subject | REF CIM_ManagedElement
Description | string | The Subject parameter identifies a CIM class for which the method returns references to instances of CIM_BaseMetricDefinition that define metrics that are available to be captured for all instances of the class.
IN | boolean | true
Required | boolean | true

#### ControlMetrics (uint32)

#### Method Qualifiers (ControlMetrics)

Name | Data Type | Value
--- | --- | ---
Description | string | ControlMetrics enables and disables the collection of metrics. It is used to control the collection of each type of metric for a CIM_ManagedElement, the collection of a given type of metric for all ManagedElements, or the collection of a specific metric for a specific ManagedElement. If the Subject parameter is specified and the Definition parameter is NULL and the MetricCollectionEnabled parameter has the value 2 "Enabled" or 3 "Disabled", upon successful completion of the method, the MetricCollectionEnabled property of each instance of CIM_MetricDefForME that references the instance of CIM_ManagedElement identified by the Subject parameter and references an instance of CIM_BaseMetricDefinition that is associated to the CIM_BaseMetricService through the CIM_ServiceAffectsElement association shall have the value of the MetricCollectionEnabled parameter. If the Subject parameter is specified and the Definition parameter is NULL and the value of the MetricCollectionEnabled parameter is 4 "Reset" upon successful completion of the method, the value of the MetricCollectionEnabled of each instance of CIM_MetricDefForME that references the instance of CIM_ManagedElement identified by the Subject parameter and references an instance of CIM_BaseMetricDefinition that is associated to the CIM_BaseMetricService through the CIM_ServiceAffectsElement association shall transition to 3 "Disabled" then to 2 "Enabled". If the Definition parameter is non-NULL and the Subject parameter is NULL, and the MetricCollectionEnabled parameter has the value 2 "Enabled" or 3 "Disabled", upon successful completion of the method the MetricCollectionEnabled property of each instance of CIM_MetricDefForME that references the instance of CIM_BaseMetricDefinition identified by the Definition parameter shall have the value of the MetricCollectionEnabled parameter. If the Definition parameter is non-NULL and the Subject parameter is NULL, and the value of the MetricCollectionEnabled parameter is 4 "Reset" upon successful completion of the method the MetricCollectionEnabled property of each instance of CIM_MetricDefForME that references the instance of CIM_BaseMetricDefinition identified by the Definition parameter shall transition to 3 "Disabled" then to 2 "Enabled". If the Subject parameter and Definition parameter are both non-NULL, and the MetricCollectionEnabled parameter has the value 2 "Enable" or 3 "Disable", upon successful completion of the method, the MetricCollectionEnabled property of the instance of CIM_MetricDefForME that references the instance of CIM_ManagedElement identified by the Subject parameter and references the instance of CIM_BaseMetricDefinition identified by the Definition parameter shall have the value of the MetricCollectionEnabled parameter. If the Subject parameter and Definition parameter are both non-NULL and the value of the MetricCollectionEnabled parameter is 4 "Reset" upon successful completion of the method, the MetricCollectionEnabled property of the instance of CIM_MetricDefForME that references the instance of CIM_ManagedElement identified by the Subject parameter and references the instance of CIM_BaseMetricDefinition identified by the Definition parameter shall transition to 3 "Disabled" then to 2 "Enabled". If the Subject parameter and Definition parameter are both non-NULL and there is not an instance of CIM_MetricDefForME that associates the two instances, the method shall return 2 "Failed". If the Subject and Definition parameters are both NULL, the method shall return 2 "Failed". If the Definition parameter is a reference to an instance of CIM_BaseMetricDefinition that is not associated to the CIM_MetricService through CIM_ServiceAffectsElement, the method shall return 2 "Failed". If the Subject parameter does not identify a single instance the Method shall return 2 "Failed".
ValueMap | string | 0, 1, 2, .., 32768..65535
Values | string | Success, Not Supported, Failed, Method Reserved, Vendor Specific

#### Method Parameters (ControlMetrics)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
MetricCollectionEnabled | uint16
Description | string | The MetricCollectionEnabled parameter indicates the desired operation to perform on the metrics.
IN | boolean | true
Required | boolean | true
ValueMap | string | 2, 3, 4, .., 32768..65535
Values | string | Enable, Disable, Reset, DMTF Reserved, Vendor Reserved
Definition | REF CIM_BaseMetricDefinition
Description | string | The Definition parameter identifies a CIM_BaseMetricDefinition for which metrics will be controlled.
IN | boolean | true
Subject | REF CIM_ManagedElement
Description | string | The Subject parameter identifies managed element(s) for which metrics will be controlled.
IN | boolean | true

#### ControlMetricsByClass (uint32)

#### Method Qualifiers (ControlMetricsByClass)

Name | Data Type | Value
--- | --- | ---
Description | string | ControlMetricsByClass enables and disables the collection of metrics. It is used to control the collection of each type of metric for all instances of a class or the collection of a specific metric for all instances of a class. If the Definition parameter is NULL, and the MetricCollectionEnabled parameter has the value 2 "Enabled" or 3 "Disabled", upon successful completion of the method, the MetricCollectionEnabled property of each instance of CIM_MetricDefForME that references an instance of the class identified by the Subject parameter and references an instance of CIM_BaseMetricDefinition that is associated to the CIM_BaseMetricService through the CIM_ServiceAffectsElement association shall have the value of the MetricCollectionEnabled parameter. If the Definition parameter is NULL, and the MetricCollectionEnabled parameter has the value 4 "Reset", upon successful completion of the method, the MetricCollectionEnabled property of each instance of CIM_MetricDefForME that references an instance of the class identified by the Subject parameter and references an instance of CIM_BaseMetricDefinition that is associated to the CIM_BaseMetricService through the CIM_ServiceAffectsElement association shall transition to 3 "Disabled" then to 2 "Enabled". If the Definition parameter is non-NULL, and the MetricCollectionEnabled parameter has the value 2 "Enable" or 3 "Disable", upon successful completion of the method the MetricCollectionEnabled property of each instance of CIM_MetricDefForME that references the instance of CIM_BaseMetricDefinition identified by the Definition parameter and references an instance of the class identified by the Subject parameter shall have the value of the MetricCollectionEnabled parameter. If the Definition parameter is non-NULL, and the MetricCollectionEnabled parameter has the value 4 "Reset", upon successful completion of the method the MetricCollectionEnabled property of each instance of CIM_MetricDefForME that references the instance of CIM_BaseMetricDefinition identified by the Definition parameter and references an instance of the class identified by the Subject parameter shall transition to 3 "Disabled" then to 2 "Enabled". For each instance of the class identified by the Subject parameter, if there is not an instance of CIM_MetricDefForME that associates the CIM_BaseMetricDefinition instance identified by the Definition parameter to the instance, the method shall return 2 "Failed". If the Subject and Definition parameters are both NULL, the method shall return 2 "Failed". If the Definition parameter is a reference to an instance of CIM_BaseMetricDefinition that is not associated to the CIM_MetricService through CIM_ServiceAffectsElement, the method shall return 2 "Failed". If the Subject parameter does not identify a single CIM Class the Method shall return 2 "Failed".
ValueMap | string | 0, 1, 2, .., 32768..65535
Values | string | Success, Not Supported, Failed, Method Reserved, Vendor Specific

#### Method Parameters (ControlMetricsByClass)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
MetricCollectionEnabled | uint16
Description | string | The MetricCollectionEnabled parameter indicates the desired operation to perform on the metrics.
IN | boolean | true
Required | boolean | true
ValueMap | string | 2, 3, 4, .., 32768..65535
Values | string | Enable, Disable, Reset, DMTF Reserved, Vendor Reserved
Definition | REF CIM_BaseMetricDefinition
Description | string | The Definition parameter identifies a CIM_BaseMetricDefinition for which metrics will be controlled.
IN | boolean | true
Subject | REF CIM_ManagedElement
Description | string | The Subject parameter identifies the CIM class for which metrics will be controlled.
IN | boolean | true
Required | boolean | true

#### GetMetricValues (uint32)

#### Method Qualifiers (GetMetricValues)

Name | Data Type | Value
--- | --- | ---
Description | string | GetMetricValues provides the ability to return a filtered list of CIM_BaseMetricValue instances. If the Definition parameter is NULL, the method shall return 2 "Failed". If the Definition parameter is a reference to an instance of CIM_BaseMetricDefinition with which the CIM_MetricService is not associated through CIM_ServiceAffectsElement, the method shall return 2 "Failed".
ValueMap | string | 0, 1, 2, .., 32768..65535
Values | string | Success, Not Supported, Failed, Method Reserved, Vendor Specific

#### Method Parameters (GetMetricValues)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
Count | uint16
Description | string | The Count parameter identifies the maximum number of instances to to be returned by the method.
IN | boolean | true
Range | uint16
Description | string | The Range parameter identifies how the instances are selected. The algorithm for ordering value instances is metric definition specific.
IN | boolean | true
ValueMap | string | 2, 3, .., 32768..65535
Values | string | Minimum, Maximum, DMTF Reserved, Vendor Specific
Values | CIM_BaseMetricValue[]
ArrayType | string | Indexed
Description | string | Upon successful completion of the method, the Values parameter contains references to instances of CIM_BaseMetricValue, filteredaccording to the values of the input parameters.
IN | boolean | false
ModelCorrespondence | string | CIM_MetricService.ShowMetrics.ManagedElements
OUT | boolean | true
Definition | REF CIM_BaseMetricDefinition
Description | string | The Definition parameter identifies a CIM_BaseMetricDefinition for which metrics will be returned.
IN | boolean | true
Required | boolean | true

#### ControlSampleTimes (uint32)

#### Method Qualifiers (ControlSampleTimes)

Name | Data Type | Value
--- | --- | ---
Description | string | Method used to allow specification of the point in time metric gathering is to be started and to specify the preferred sample interval time for periodic data gathering. Whenever sampling for additional metrics is started, the settings specified by this method may be used.
ValueMap | string | 0, 1, 2, .., 32768..65535
Values | string | Success, Not Supported, Failed, Method Reserved, Vendor Specific

#### Method Parameters (ControlSampleTimes)

Name | Type | Qualifiers
--- | --- | ---
Name | Data Type | Value
PreferredSampleInterval | datetime
Description | string | Preferred sample interval time. In order to get correlatable metrics, it is recommended that the sample interval be chosen in a way that 3600 modulo sample interval time in seconds is equal to 0. It is the responsibility of the CIM metric service implementation to decide whether the requested sample interval time is honored. The CIM client can check whether or not the metric providers are honoring the requested sample interval time by retrieving related BaseMetricDefinition instances and checking the contents of the "CIM_BaseMetricDefinition.SampleInterval" property.
IN | boolean | true
Required | boolean | true
RestartGathering | boolean
Description | string | Boolean that when set to TRUE requests that gathering of all metrics associated to the metric service is re-started with this method call.
IN | boolean | true
Required | boolean | true
StartSampleTime | datetime
Description | string | Point in time when sampling for the metrics is to be started. A value of 99990101000000.000000+000 shall indicate that sampling should start at the next time it is synchronized to the full hour. Sampling is synchronized to the full hour if seconds since midnight modulo sample interval in seconds is equal to 0.
IN | boolean | true
Required | boolean | true

### Inherited Class Methods

Name | Return Type | Class Origin
--- | --- | ---
RequestStateChange | uint32 | CIM_EnabledLogicalElement
StartService | uint32 | CIM_Service
StopService | uint32 | CIM_Service