Dela via


System.Performance.DeltaDataProvider

Applies To: Operations Manager 2007 R2

The System.Performance.DeltaDataProvider is a data source module type that outputs a calculated delta of Windows performance data as System.Performance.Data data on a timed interval.

Usage

This module outputs the delta of the specified number of sample performance data at the specified frequency.

Type Definition

<DataSourceModuleType ID="System.Performance.DeltaDataProvider" Accessibility="Public">
  <Configuration>
    <xsd:element name="ComputerName" type="xsd:string" minOccurs="0" maxOccurs="1" />
    <xsd:element name="CounterName" type="xsd:string" />
    <xsd:element name="ObjectName" type="xsd:string" />
    <xsd:element name="InstanceName" type="xsd:string" minOccurs="0" maxOccurs="1" />
    <xsd:element name="AllInstances" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
    <xsd:element name="Frequency" type="xsd:unsignedInt" />
    <xsd:element name="ScaleBy" type="xsd:double" minOccurs="0" maxOccurs="1" />
    <xsd:element name="NumSamples" type="xsd:unsignedInt" />
  </Configuration>
  <OverrideableParameters>
    <OverrideableParameter ID="Frequency" ParameterType="int" Selector="$Config/Frequency$" />
  </OverrideableParameters>
  <ModuleImplementation>
    <Composite>
      <MemberModules>
        <DataSource TypeID="System.Performance.DataProvider" ID="DataSource">
          <ComputerName>$Config/ComputerName$</ComputerName>
          <CounterName>$Config/CounterName$</CounterName>
          <ObjectName>$Config/ObjectName$</ObjectName>
          <InstanceName>$Config/InstanceName$</InstanceName>
          <AllInstances>$Config/AllInstances$</AllInstances>
          <Frequency>$Config/Frequency$</Frequency>
          <ScaleBy>$Config/ScaleBy$</ScaleBy>
        </DataSource>
        <ConditionDetection TypeID="System.Performance.DeltaValueCondition" ID="Delta">
          <NumSamples>$Config/NumSamples$</NumSamples>
          <Absolute>true</Absolute>
        </ConditionDetection>
      </MemberModules>
      <Composition>
        <Node ID="Delta">
          <Node ID="DataSource" />
        </Node>
      </Composition>
    </Composite>
  </ModuleImplementation>
  <OutputType>System.Performance.Data</OutputType>
</DataSourceModuleType>

Parameters

The System.Performance.DeltaDataProvider supports the configuration parameters described in the following table.

Parameter Type Overrideable Description

ComputerName

String

False

Optional parameter. Contains the name of the computer to collect performance data from.

CounterName

String

False

Required parameter. Specifies the name of the Windows performance counter.

ObjectName

String

False

Required parameter. Specifies the Windows performance object name.

InstanceName

String

False

Optional parameter. Contains the Windows performance instance, if applicable.

AllInstances

Boolean

False

Optional parameter. Specifies whether to collect all instances for a multi-instance counter. Defaults to false.

Frequency

Unsigned Integer

True

Required parameter. Specifies the interval in seconds between performance data collection. Data might not actually be output from the module on this frequency if optimization is being used. Must be greater than 0.

ScaleBy

Double

False

Operations Manager 2007 R2 only. Optional parameter. Specifies the scale value of the raw performance counter value to make that value more readable. Defaults to 1.0.

NumSamples

Unsigned Integer

False

Required parameter. Contains the number of samples over which to calculate the delta difference.

For more information about the parameters in this module see System.Performance.DeltaValueCondition and System.Performance.DataProvider.

Composition

The System.Performance.DeltaDataProvider composite module contains the member modules described in the following table.

Workflow Run Order Module Type Usage

1

System.Performance.DataProvider

Provides the performance data from the specified counter.

2

System.Performance.DeltaValueCondition

Calculates the delta value of the specified number of incoming performance data samples.

None.

External Module References

None.

Remarks

For remarks, see System.Performance.DataProvider.

Sample

The following XML example is a UnitMonitorType definition that can be used to create a two-state threshold UnitMonitor element that uses the delta value of sampled performance data to determine monitor health state.

<UnitMonitorType ID="System.Performance.DeltaThreshold" Accessibility="Public">
  <MonitorTypeStates>
    <MonitorTypeState ID="UnderThreshold" />
    <MonitorTypeState ID="OverThreshold" />
  </MonitorTypeStates>
  <Configuration>
    <xsd:element name="ComputerName" type="xsd:string" minOccurs="0" maxOccurs="1" />
    <xsd:element name="CounterName" type="xsd:string" />
    <xsd:element name="ObjectName" type="xsd:string" />
    <xsd:element name="InstanceName" type="xsd:string" minOccurs="0" maxOccurs="1" />
    <xsd:element name="AllInstances" type="xsd:boolean" minOccurs="0" maxOccurs="1" />
    <xsd:element name="Frequency" type="xsd:unsignedInt" />
    <xsd:element name="ScaleBy" type="xsd:double" minOccurs="0" maxOccurs="1" />
    <xsd:element minOccurs="1" maxOccurs="1" name="Threshold" type="xsd:double" />
    <xsd:element minOccurs="1" maxOccurs="1" name="NumSamples" type="xsd:unsignedInt" />
    <xsd:element minOccurs="1" maxOccurs="1" name="Absolute">
      <xsd:simpleType>
        <xsd:restriction base="xsd:string">
          <xsd:enumeration value="true" />
          <xsd:enumeration value="false" />
        </xsd:restriction>
      </xsd:simpleType>
    </xsd:element>
  </Configuration>
  <OverrideableParameters>
    <OverrideableParameter ID="Frequency" ParameterType="int" Selector="$Config/Frequency$" />
    <OverrideableParameter ID="Threshold" ParameterType="double" Selector="$Config/Threshold$" />
  </OverrideableParameters>
  <MonitorImplementation>
    <MemberModules>
      <DataSource TypeID="System.Performance.DeltaDataProvider" ID="DS1">
        <ComputerName>$Config/ComputerName$</ComputerName>
        <CounterName>$Config/CounterName$</CounterName>
        <ObjectName>$Config/ObjectName$</ObjectName>
        <InstanceName>$Config/InstanceName$</InstanceName>
        <AllInstances>$Config/AllInstances$</AllInstances>
        <Frequency>$Config/Frequency$</Frequency>
        <ScaleBy>$Config/ScaleBy$</ScaleBy>
        <NumSamples>$Config/NumSamples$</NumSamples>
      </DataSource>
      <ConditionDetection TypeID="System!System.ExpressionFilter" ID="CDOverThreshold">
        <Expression>
          <SimpleExpression>
            <ValueExpression>
              <XPathQuery Type="Double">Value</XPathQuery>
            </ValueExpression>
            <Operator>Greater</Operator>
            <ValueExpression>
              <Value Type="Double">$Config/Threshold$</Value>
            </ValueExpression>
          </SimpleExpression>
        </Expression>
      </ConditionDetection>
      <ConditionDetection TypeID="System!System.ExpressionFilter" ID="CDUnderThreshold">
        <Expression>
          <SimpleExpression>
            <ValueExpression>
              <XPathQuery Type="Double">Value</XPathQuery>
            </ValueExpression>
            <Operator>LessEqual</Operator>
            <ValueExpression>
              <Value Type="Double">$Config/Threshold$</Value>
            </ValueExpression>
          </SimpleExpression>
        </Expression>
      </ConditionDetection>
    </MemberModules>
    <RegularDetections>
      <RegularDetection MonitorTypeStateID="UnderThreshold">
        <Node ID="CDUnderThreshold">
          <Node ID="CDDeltaThreshold">
            <Node ID="DS1" />
          </Node>
        </Node>
      </RegularDetection>
      <RegularDetection MonitorTypeStateID="OverThreshold">
        <Node ID="CDOverThreshold">
          <Node ID="CDDeltaThreshold">
            <Node ID="DS1" />
          </Node>
        </Node>
      </RegularDetection>
    </RegularDetections>
  </MonitorImplementation>
</UnitMonitorType>

Below is a sample data item that could be returned by the System.Performance.DeltaDataProvider module. The Value element represents the delta value of the specified number of samples taken. The FirstValue and LastValue elements represent the first sample value and the last sample value respectively.

<DataItem type="System.Performance.Data" time="2008-03-11T03:08:55.0343534-08:00" sourceHealthServiceId="0A0800A0-A802-E90B-6045-D961D516CA78">
  <TimeSampled>2008-03-11T03:08:55.0343534-08:00</TimeSampled>
  <ObjectName>LC:SIP - 01 - Peers</ObjectName>
  <CounterName>SIP - 018 - Sends Timed-Out</CounterName>
  <InstanceName>_Total</InstanceName>
  <IsNull Type="Boolean">false</IsNull>
  <Value>2</Value>
  <SampleCount>2</SampleCount>
  <FirstValue>1010</FirstValue>
  <LastValue>1012</LastValue>
</DataItem>

Information

   

Module Type

DataSourceModuleType

InputType

None

Output Type

System.Performance.Data

Implementation

Composite

Library

System.Performance.Library