System.Performance.SimpleThresholdCondition

Applies To: Operations Manager 2007 R2

The System.Performance.SimpleThresholdCondition condition detection module type is used to filter incoming System.Performance.Data data with a threshold condition. The module outputs System.Performance.Data if the incoming performance data exceeds the threshold condition.

Usage

Use this module as an expression filter in a workflow when you want to provide a threshold test to incoming performance data.

Type Definition

<ConditionDetectionModuleType ID="System.Performance.SimpleThresholdCondition" Accessibility="Public" Stateful="false" PassThrough="false" Batching="false">
  <Configuration>
    <IncludeSchemaTypes>
      <SchemaType>System!System.ExpressionEvaluatorSchema</SchemaType>
    </IncludeSchemaTypes>
    <xsd:element name="Threshold" type="xsd:double" />
    <xsd:element name="Operator" type="CriteriaCompareType" />
  </Configuration>
  <OverrideableParameters>
    <OverrideableParameter ID="Threshold" ParameterType="double" Selector="$Config/Threshold$" />
  </OverrideableParameters>
  <ModuleImplementation>
    <Composite>
      <MemberModules>
        <ConditionDetection TypeID="System!System.ExpressionFilter" ID="Filter">
          <Expression>
            <SimpleExpression>
              <ValueExpression>
                <XPathQuery Type="Double">Value</XPathQuery>
              </ValueExpression>
              <Operator>$Config/Operator$</Operator>
              <ValueExpression>
                <Value Type="Double">$Config/Threshold$</Value>
              </ValueExpression>
            </SimpleExpression>
          </Expression>
        </ConditionDetection>
      </MemberModules>
      <Composition>
        <Node ID="Filter" />
      </Composition>
    </Composite>
  </ModuleImplementation>
  <OutputType>System.Performance.Data</OutputType>
  <InputTypes>
    <InputType>System.Performance.Data</InputType>
  </InputTypes>
</ConditionDetectionModuleType>

Parameters

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

Parameter Type Overrideable Description

Threshold

Double

True

Required parameter. The double value that defines the threshold to be used in the expression.

Operator

CriteriaCompareType

False

Required parameter. The operator to use to compare the incoming performance data to the threshold.

Threshold

The Threshold parameter represents the threshold value to compare against the incoming data item. The value is cast as a Double data type. For more information about casting values in expressions, see ValueExpressionType.

Composition

The System.Performance.SimpleThresholdCondition module is a composite module that contains the member module described in the following table.

Workflow Run Order Module Type Usage

1

System.ExpressionFilter

Evaluates whether the specified expression on the incoming data evaluates to true or false.

None.

External Module References

The System.Performance.SimpleThresholdCondition module is a member of the public modules described in the following table.

Module Type Library Usage

System.Performance.AverageThresholdCondition

System.Performance.Library

Outputs performance data if the specified threshold is exceeded by the average value of performance samples.

System.Performance.DeltaThresholdCondition

System.Performance.Library

Outputs performance data if the specified threshold is exceeded by the delta value of performance samples.

Sample

The following XML sample illustrates a rule that checks the amount of free disk space every 15 minutes. If the threshold condition is met, an alert is generated.

<Rule ID="Microsoft.Exchange.2007.DiskFreeSpaceLowRed" Enabled="onEssentialMonitoring" Target="Microsoft.Exchange.2007.Microsoft_Exchange_2007_All_Servers_Installation" ConfirmDelivery="false" Remotable="true" Priority="Normal" DiscardLevel="100">
  <Category>PerformanceHealth</Category>
  <DataSources>
    <DataSource ID="GetPerformanceData" TypeID="PerformanceLibrary!System.Performance.DataProvider">
      <ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
      <CounterName>Free Megabytes</CounterName>
      <ObjectName>LogicalDisk</ObjectName>
      <AllInstances>true</AllInstances>
      <Frequency>900</Frequency>
    </DataSource>
  </DataSources>
  <ConditionDetection ID="CompareToThreshold" TypeID="Performance!System.Performance.SimpleThresholdCondition">
    <Threshold>20</Threshold>
    <Operator>LessEqual</Operator>
  </ConditionDetection>
  <WriteActions>
    <WriteAction ID="GenerateAlert" TypeID="Health!System.Health.GenerateAlert">
      <Priority>1</Priority>
      <Severity>2</Severity>
      <AlertMessageId>$MPElement[Name="Microsoft.Exchange.2007.DiskFreeSpaceLowRed.Alert.AlertMessage"]$</AlertMessageId>
      <AlertParameters>
        <AlertParameter1>$Data/InstanceName$</AlertParameter1>
        <AlertParameter2>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter2>
        <AlertParameter3>$Data/Value$</AlertParameter3>
      </AlertParameters>
      <Suppression>
        <SuppressionValue />
      </Suppression>
    </WriteAction>
  </WriteActions>
</Rule>

Information

   

Module Type

ConditionDetectionModuleType

Input Type

System.Performance.Data

Output Type

System.Performance.Data

Implementation

Composite

Library

System.Performance.Library