Microsoft.SystemCenter.WebApplication.Boolean.CriteriaDoesNotMatch

The Microsoft.SystemCenter.WebApplication.Boolean.CriteriaDoesNotMatch condition detection module type takes System.BaseData data as input and either passes through or halts the workflow, depending on the value of the input. This module does not alter the data in any way.

Usage

This module is commonly used to evaluate the results from Microsoft.SystemCenter.WebApplication.UrlProbe data source module which runs a sequence of browser requests to a web site. That module carries out some evaluation on the results of the URL probe before passing on its output. Certain conditions will output a result of true or false. The purpose of the Microsoft.SystemCenter.WebApplication.Boolean.CriteriaDoesNotMatch module is to determine whether the data source module returned a value of true, which may indicate a healthy state or an error state, depending on the result. It is usually used in a pair with Microsoft.SystemCenter.WebApplication.Boolean.CriteriaMatch.

Type Definition

<ConditionDetectionModuleType ID="Microsoft.SystemCenter.WebApplication.Boolean.CriteriaDoesNotMatch" Accessibility="Public" Batching="true" Stateful="false" PassThrough="false">
  <Configuration>
    <IncludeSchemaTypes>
      <SchemaType>System!System.ExpressionEvaluatorSchema</SchemaType>
    </IncludeSchemaTypes>
    <xsd:element name="DataItemEvaluationQuery" type="xsd:string" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
  </Configuration>
  <ModuleImplementation Isolation="Any">
    <Composite>
      <MemberModules>
        <ConditionDetection ID="Filter" TypeID="System!System.ExpressionFilter">
          <Expression>
            <SimpleExpression>
              <ValueExpression>
                <XPathQuery>$Config/DataItemEvaluationQuery$</XPathQuery>
              </ValueExpression>
              <Operator>Equal</Operator>
              <ValueExpression>
                <Value Type="Boolean">false</Value>
              </ValueExpression>
            </SimpleExpression>
          </Expression>
        </ConditionDetection>
      </MemberModules>
      <Composition>
        <Node ID="Filter" />
      </Composition>
    </Composite>
  </ModuleImplementation>
  <OutputType>System!System.BaseData</OutputType>
  <InputTypes>
    <InputType>System!System.BaseData</InputType>
  </InputTypes>
</ConditionDetectionModuleType>

Parameters

The Microsoft.SystemCenter.WebApplication.Boolean.CriteriaDoesNotMatch module supports the following configuration parameters.

Parameter Type Description

DataItemEvaluationQuery

String

Indicates the condition to be matched.

Composition

The Microsoft.SystemCenter.WebApplication.Boolean.CriteriaDoesNotMatch module is a composite module that contains the member modules that are described in the following table.

Workflow Run Order Module Type Usage

1

System.ExpressionFilter

Halts the data item or allows it to continue based on the results of the filter.

Module Type Usage

Microsoft.SystemCenter.WebApplication.Boolean.CriteriaMatch

Performs the same function as Microsoft.SystemCenter.WebApplication.Boolean.CriteriaDoesNotMatch, but filters on states where the query returns true.

Microsoft.SystemCenter.WebApplication.OKCriteriaMatch

Performs the same function as Microsoft.SystemCenter.WebApplication.Boolean.CriteriaDoesNotMatch, but evaluates criteria with three possible states: OK, Warning, and Error. This module evaluates a single data item against a result of 1 (OK).

Microsoft.SystemCenter.WebApplication.WarningCriteriaMatch

Performs the same function as Microsoft.SystemCenter.WebApplication.Boolean.CriteriaDoesNotMatch, but evaluates criteria with three possible states: OK, Warning, and Error. This module evaluates a single data item against a result of 2 (Warning).

Microsoft.SystemCenter.WebApplication.ErrorCriteriaMatch

Performs the same function as Microsoft.SystemCenter.WebApplication.Boolean.CriteriaDoesNotMatch, but evaluates criteria with three possible states: OK, Warning, and Error. This module evaluates a single data item against a result of 3 (Error).

External Module References

None

Sample

The following unit monitor type and unit monitor demonstrate the use of both the Microsoft.SystemCenter.WebApplication.Boolean.CriteriaMatch and Microsoft.SystemCenter.WebApplication.Boolean.CriteriaDoesNotMatch condition detection modules. The two condition detection modules are used in the RegularDetection section of the unit monitor type.

<UnitMonitorType ID="MPAuthor.WebApplication.BasePage.DNSResolutionFailure" Accessibility="Public">
  <MonitorTypeStates>
    <MonitorTypeState ID="DNSResolutionFailure" NoDetection="false" />
    <MonitorTypeState ID="DNSResolutionOK" NoDetection="false" />
  </MonitorTypeStates>
  <Configuration>
    <element name="RequestID" type="xsd:unsignedInt" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2001/XMLSchema" />
  </Configuration>
  <MonitorImplementation>
    <MemberModules>
      <DataSource ID="DS1" TypeID="MPAuthor.WebApplication.UrlDataSource" />
      <ProbeAction ID="OnDemandReset" TypeID="System!System.PassThroughProbe" />
      <ConditionDetection ID="CDDNSResolutionFailureTrue" TypeID="MicrosoftSystemCenterWebApplicationLibrary!Microsoft.SystemCenter.WebApplication.Boolean.CriteriaMatch">
        <DataItemEvaluationQuery>RequestResults/RequestResult[@Id="$Config/RequestID$"]/BasePageData/DNSResolutionFailure</DataItemEvaluationQuery>
      </ConditionDetection>
      <ConditionDetection ID="CDDNSResolutionFailureFalse" TypeID="MicrosoftSystemCenterWebApplicationLibrary!Microsoft.SystemCenter.WebApplication.Boolean.CriteriaDoesNotMatch">
        <DataItemEvaluationQuery>RequestResults/RequestResult[@Id="$Config/RequestID$"]/BasePageData/DNSResolutionFailure</DataItemEvaluationQuery>
      </ConditionDetection>
    </MemberModules>
    <RegularDetections>
      <RegularDetection MonitorTypeStateID="DNSResolutionFailure">
        <Node ID="CDDNSResolutionFailureTrue">
          <Node ID="DS1" />
        </Node>
      </RegularDetection>
      <RegularDetection MonitorTypeStateID="DNSResolutionOK">
        <Node ID="CDDNSResolutionFailureFalse">
          <Node ID="DS1" />
        </Node>
      </RegularDetection>
    </RegularDetections>
    <OnDemandDetections>
      <OnDemandDetection MonitorTypeStateID="DNSResolutionOK">
        <Node ID="OnDemandReset" />
      </OnDemandDetection>
    </OnDemandDetections>
  </MonitorImplementation>
</UnitMonitorType>
<UnitMonitor ID="MPAuthor.WebApplication.Request1.BasePage.DNSResolutionFailure" Accessibility="Public" Enabled="true" Target=" MPAuthor.WebApplication" ParentMonitorID=" MPAuthor.WebApplication.Request1.BasePage" Remotable="true" Priority="Normal" TypeID=" MPAuthor.WebApplication.BasePage.DNSResolutionFailure" ConfirmDelivery="false">
  <Category>PerformanceHealth</Category>
  <OperationalStates>
    <OperationalState ID="OK" MonitorTypeStateID="DNSResolutionOK" HealthState="Success" />
    <OperationalState ID="Error" MonitorTypeStateID="DNSResolutionFailure" HealthState="Error" />
  </OperationalStates>
  <Configuration>
    <RequestID>1</RequestID>
  </Configuration>
</UnitMonitor>

Information

   

Module Type

ConditionDetectionModuleType

Input Type

System.BaseData

Output Type

System.BaseData

Implementation

Composite

Library

Microsoft.SystemCenter.WebApplication.Library