Microsoft.SystemCenter.WebApplication.UrlProbe

Microsoft.SystemCenter.WebApplication.UrlProbe 探测模块连接到一个或多个 URL,并返回 Microsoft.SystemCenter.WebApplication.WebApplicationData。 然后,可以将此数据与 Microsoft.SystemCenter.WebApplication.Library 中的其他模块一起使用,以评估目标网站各方面的运行状况。

使用情况

Microsoft.SystemCenter.WebApplication.UrlProbe 的主要功能是将请求发送到一个或多个 URL 并生成有关结果的报告。 请求的格式是一种复杂类型,与其他模块一起使用来评估目标 URL 的运行状况状态。 由于使用单个探测可以发出大量的请求,并且请求结果可以包含大量数据,探测本身在生成输出之前会对请求执行某种程度的评估。 例如,模块不仅提供查询 URL 中的状态代码作为输出,而是将状态代码与指定范围进行比较,并提供成功或失败代码作为输出。 该模块还可以匹配请求返回的 HTML 的内容,例如,匹配单词 error 以确定是否返回了错误页。 由于该模块会执行此项评估,因此无需在规则或监视器中使用复杂的表达式匹配逻辑。

通常使用 Microsoft.SystemCenter.WebApplication.PerProbe.Scheduler 触发此模块。

Microsoft.SystemCenter.WebApplication.UrlProbe 模块通常用于许多条件检测模块,这些模块用于评估其输出。 该模块根据请求中定义的参数评估 URL 运行状况的不同方面,并为每个参数返回相应的输出。

其中的一些参数直接评估为某种运行状况。 对于这些参数,需使用三个条件检测模块,其中每个模块匹配探测的特定整数输出,该输出指示特定的运行状况,如下表中所示:

条件检测模块 匹配的值
Microsoft.SystemCenter.WebApplication.OKCriteriaMatch 1
Microsoft.SystemCenter.WebApplication.WarningCriteriaMatch 2
Microsoft.SystemCenter.WebApplication.ErrorCriteriaMatch 3

其他参数返回二进制状态。 对于这种情况,将使用两个条件检测模块,其中每个模块匹配探测的布尔类型,如下表中所示:

条件检测模块 匹配的值
Microsoft.SystemCenter.WebApplication.Boolean.CriteriaDoesNotMatch false
Microsoft.SystemCenter.WebApplication.Boolean.CriteriaMatch

最后,返回一些原始值,你可以收集这些值用于分析和报告,或者将其与表达式筛选器条件检测模块配合使用。

类型定义

<ProbeActionModuleType ID="Microsoft.SystemCenter.WebApplication.UrlProbe" Accessibility="Public" Batching="false" PassThrough="false">
   <Configuration>
      <IncludeSchemaTypes>
         <SchemaType>Microsoft.SystemCenter.WebApplication.WebModulesSchema</SchemaType>
      </IncludeSchemaTypes>
      <xsd:element name="Proxy" type="xsd:string" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
      <xsd:element name="ProxyUserName" type="xsd:string" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
      <xsd:element name="ProxyPassword" type="xsd:string" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
      <xsd:element name="ProxyAuthenticationScheme" type="AuthenticationSchemeType" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
      <xsd:element name="CredentialUserName" type="xsd:string" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
      <xsd:element name="CredentialPassword" type="xsd:string" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
      <xsd:element name="AuthenticationScheme" type="AuthenticationSchemeType" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
      <xsd:element name="IgnoreServerCertError" type="xsd:boolean"  xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
      <xsd:element name="FollowRedirects" type="xsd:boolean" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
      <xsd:element name="RetryCount" type="xsd:unsignedInt" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
      <xsd:element name="RequestTimeout" type="xsd:unsignedInt" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
      <xsd:element name="Requests" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
         <xsd:complexType>
            <xsd:sequence>
               <xsd:element name="Request" type="RequestType" minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
         </xsd:complexType>
      </xsd:element>
      <xsd:element name="TransactionResponseTimeWarningCriteria" type="RequestEvaluationNumericCriteriaType" minOccurs="0" maxOccurs="1" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
      <xsd:element name="TransactionResponseTimeErrorCriteria" type="RequestEvaluationNumericCriteriaType" minOccurs="0" maxOccurs="1" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
      <xsd:element name="PerformanceCollectionFrequencyInCycles" type="xsd:unsignedInt" minOccurs="0" maxOccurs="1" default="1" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
   </Configuration>
   <OverridableParameters>
      <OverridableParameter ID="Proxy" Selector="$Config/Proxy$" ParameterType="string" />
      <OverridableParameter ID="ProxyUserName" Selector="$Config/ProxyUserName$" ParameterType="string" />
      <OverridableParameter ID="ProxyPassword" Selector="$Config/ProxyPassword$" ParameterType="string" />
      <OverridableParameter ID="ProxyAuthenticationScheme" Selector="$Config/ProxyAuthenticationScheme$" ParameterType="string" />
      <OverridableParameter ID="CredentialUserName" Selector="$Config/CredentialUserName$" ParameterType="string" />
      <OverridableParameter ID="CredentialPassword" Selector="$Config/CredentialPassword$" ParameterType="string" />
      <OverridableParameter ID="AuthenticationScheme" Selector="$Config/AuthenticationScheme$" ParameterType="string" />
      <OverridableParameter ID="IgnoreServerCertError" Selector="$Config/IgnoreServerCertError$"  ParameterType="bool"/>
      <OverridableParameter ID="FollowRedirects" Selector="$Config/FollowRedirects$" ParameterType="bool" />
      <OverridableParameter ID="RetryCount" Selector="$Config/RetryCount$" ParameterType="int" />
      <OverridableParameter ID="RequestTimeout" Selector="$Config/RequestTimeout$" ParameterType="int" />
   </OverridableParameters>
   <ModuleImplementation Isolation="Any">
      <Native>
         <ClassID>92C599FD-6639-4A9F-90DA-E1350162A318</ClassID>
      </Native>
   </ModuleImplementation>
   <OutputType>Microsoft.SystemCenter.WebApplication.WebApplicationData</OutputType>
   <TriggerOnly>true</TriggerOnly>
</ProbeActionModuleType>

参数

Microsoft.SystemCenter.WebApplication.UrlProbe 模块支持下表中所述的配置参数。

参数 类型 Overrides 描述
Proxy 字符串 True 必需的参数,但可为空。 当代理需要通过代理服务器访问 URL 时指定代理服务器的名称。
ProxyUserName 字符串 True 必需的参数,但可为空。 当指定的代理服务器需要身份验证时指定要与代理服务器配合使用的用户名。
ProxyPassword 字符串 True 必需的参数,但可为空。 当指定的代理服务器需要身份验证时指定要与代理服务器配合使用的密码。
ProxyAuthenticationScheme AuthenticationSchemeType True 必需参数。 当代理需要通过代理服务器访问 URL 时指定要与代理服务器配合使用的身份验证方案。 有效值为 NoneBasicNTLMDigestNegotiate
CredentialUserName 字符串 True 必需的参数,但可为空。 指定要与查询的 URL 配合使用的用户名。
CredientialPassword 字符串 True 必需的参数,但可为空。 指定要与查询的 URL 配合使用的密码。
AuthenticationScheme AuthenticationSchemeType True 必需参数。 指定要与查询的 URL 配合使用的身份验证方案。 有效值为 NoneBasicNTLMDigestNegotiate
IgnoreServerCertError 布尔值 True 指定是否应忽略服务器证书错误。
FollowRedirects 布尔值 True 必需参数。 指定查询是否应跟踪 URL 重定向。
RetryCount 整数 True 必需参数。 指定在超时之前模块应重试指定的 URL 的次数。
RequestTimeout 整数 True 必需参数。 指定在重试之前等待指定的 URL 返回响应的时长。
请求 复杂类型 错误 Request 元素(参阅下文)的集合。
TransactionResponseTimeWarningCriteria RequestEvaluationNumericCriteriaType 错误 可选参数。 指定响应时间,将在此时间指定警告。
TransactionResponseTimeErrorCriteria RequestEvaluationNumericCriteriaType 错误 可选参数。 指定响应时间,将在此时间指定错误。
PerformanceCollectionFrequencyInCycles 整数 错误 可选参数。 指定每次收集之前必须完成多少个查询间隔。 如果值为 1,则每当运行浏览器会话,就会收集计数器。 如果为 2,则仅在运行浏览器会话时每隔一秒收集计数器,依此。

Request 元素

Requests 元素是一个或多个 Request 元素的集合。 每个 Request 元素具有一个 RequestID 子元素,该子元素唯一标识该 Requests 集内的请求。 请求根据其 RequestID 按顺序处理。 Request 元素包括以下元素:

元素 类型 说明
RequestID 整数 由于每个探测可以发起多个请求,因此 RequestID 将唯一标识每个请求并指定请求的处理顺序。
URL 字符串 要查询的 URL。
谓词 VerbType 指示要与 URL 请求配合使用的谓词。 可采用以下任一值:GET、HEAD 或 POST。
版本 VersionType 指示请求的 HTTP 类型。 有效值为 HTTP/1.0 和 HTTP/1.1。
HttpHeaders HttpHeadersType 请求的 HTTP 标头。 HttpHeadersType 是由 0 或多个 NameValueType 类型的 HttpHeader 元素组成的复杂类型。 而 NameValueType 由两个必需元素 Name 和 Value 组成。
正文 字符串 如果 VerbType 为 GET 或 HEAD,则此元素的值为空。 如果 VerbType 为 POST, 则此元素是 POST 提交的请求正文。
CheckContentChange 布尔值 如果为 true,则提供其他内容验证。
ContentHash ContentHashType 由 36 字符十六进制 8-4-4-4-12 字符串组成。
Depth 整数 指定要收集的外部链接的级别数。 如果值为 0,则仅评估页面本身上的链接。 如果值为 1,则评估每个目标页面上的链接。 如果值为 2,则评估这些目标页面上的链接。依此类推。
ThinkTime 整数 发出请求之后、收集正文之前等待的时间。
CheckInternalLinks 布尔值 启用每个内部链接的状态收集,并在请求监视评估中包含内部链接。 内部链接是引用同一页面上某个位置的链接。
CheckExternalLinks 布尔值 启用每个外部链接的状态收集,并在请求监视评估中包含外部链接。 外部链接是引用当前页面外部某个位置的链接。
CheckResources 布尔值 如果为 true,则监视器将返回页面资源的状态。 不会测量每个资源,而是评估所有资源的总计。 如果为 false,则资源监视器对请求不起作用。
RequestEvaluationCriteria RequestEvaluationCriteriaType 用于评估请求返回的数据(参阅下文)的复杂类型。
FormsAuthCredentials FormsAuthCredentialsType 由 CredentialName、UserName 和 Password 字符串组成的复杂类型。

RequestEvaluationCriteria 元素

RequestEvaluationCriteria 元素可用于评估请求返回的数据并确定 URL 的运行状况。 每个元素是复杂类型,其中包含可通过以下三种方式之一匹配的条件:

  • 数字条件。 这是最常用的方式,用于评估可测量值,例如返回的状态代码或响应时间。
  • 内容匹配条件。 用于评估返回的 HTML 的内容,以确定其中是否包含特定的文本字符串。
  • 自定义条件。 这是一个表达式,用于根据用户定义的各种不同可用参数进行匹配。

可以使用任意数量的数字条件或自定义条件,但只允许一个内容匹配条件。 RequestEvaluationCriteriaType 由以下元素组成:

元素 类型 说明
StopProcessingIfWarningCriteriaIsMet Boolean 如果为 true,则在符合警告条件时,会立即停止处理请求。
StopProcessingIfErrorCriteriaIsMet Boolean 如果为 true,则在符合错误条件时,会立即停止处理请求。
BasePageEvaluationCriteria 复杂类型 由两个 BasePageEvaluationCriteriaType 类型的、用于评估基础页面的元素 WarningCriteria 和 ErrorCriteria 组成。
LinksEvaluationCriteria 复杂类型 由两个 ChildRequestsEvaluationCriteriaType 类型的、用于评估页面上的链接的元素 WarningCriteria 和 ErrorCriteria 组成。 ChildRequestsEvaluationCriteriaType 由零个或多个 RequestEvaluationNumericCriteriaType 类型的 NumericCriteriaExpressions、零个或一个 ListNumericRequestCriteriaType 类型的 StatusCodeCriteria,以及零个或多个 ExpressionType 类型的 CustomCriteria 组成。
ResourcesEvaluationCriteria 复杂类型 由两个 ChildRequestsEvaluationCriteriaType 类型的、用于评估页面上的资源的元素 WarningCriteria 和 ErrorCriteria 组成。 ChildRequestsEvaluationCriteriaType 由零个或多个 RequestEvaluationNumericCriteriaType 类型的 NumericCriteriaExpressions、零个或一个 ListNumericRequestCriteriaType 类型的 StatusCodeCriteria,以及零个或一个 ExpressionType 类型的 CustomCriteria 组成。
WebPageTotalEvaluationCritieria 复杂类型 由两个 WebPageTotalEvaluationCriteriaType 类型(参阅下文)的元素 WarningCriteria 和 ErrorCriteria 组成。 WebPageTotalEvaluationCriteriaType 的类型为 WebPageTotalEvaluationCriteriaType,测量页面的总计统计信息,包括基础页面、链接和资源。 WebPageTotalEvaluationCriteriaType 仅由 RequestEvaluationNumericCriteriaType 类型(参阅下文)的零个或多个 NumericCriteriaExpression 实例组成。
DepthEvaluationCriteria 复杂类型 由两个 DepthEvaluationCriteriaType 类型的元素 WarningCriteria 和 ErrorCriteria 组成。 DepthEvaluationCriteriaType 由下面所述的零个或一个 ListNumericRequestCriteriaType 实例组成。

最常用的评估类型为数字,其中,所返回数据的某个项(例如解析时间)将与配置的阈值进行比较。 NumericCriteriaExpression 的类型为 RequestEvaluationNumericCriteriaType,包含三个元素:NumericRequestMetric、Operator 和 Value 。

NumericRequestMetric 的类型为 NumericRequestMetricType,该类型是一个枚举,可以包括多个指标中的一个。 每个指标与特定的评估条件相关联,如下所示:

条件 指标
BasePageData DNSResolutionTime
TCPConnectTime
TimeToFirstByte
TimeToLastByte
RedirectTime
DownloadTime
TotalResponseTime
ContentSize
StatusCode
DaysToExpiry
LinkData AggregateDNSResolutionTime
AggregateTCPConnectTime
AggregateTimeToFirstByte
AggregateTimeToLastByte
AggregateRedirectTime
AggregateDownloadTime
AggregateTotalResponseTime
AggregateContentSize
ResourceData AggregateDNSResolutionTime
AggregateTCPConnectTime
AggregateTimeToFirstByte
AggregateTimeToLastByte
AggregateRedirectTime
AggregateDownloadTime
AggregateTotalResponseTime
AggregateContentSize
TotalData AggregateDNSResolutionTime
AggregateTCPConnectTime
AggregateTimeToFirstByte
AggregateTimeToLastByte
AggregateRedirectTime
AggregateDownloadTime
AggregateTotalResponseTime
AggregateContentSize
TransactionResponseTime

Operator 元素的类型为 CriteriaCompareType,包括以下项之一:Equal、NotEqual、Greater、Less、GreaterEqual 或 LessEqual 。

Value 元素的类型为 double,指定要比较的值类型。

如果要评估的返回数据项不是数字(例如内容评估),则需要对字符串进行比较。 ContentMatchCriteria 的类型为 RequestEvaluationStringCriteriaType,其中包含两个子元素:Operator 和 Value 。 Operator 可为以下两种类型之一:

  • CriteriaCompareType 类型的 SimpleStringOperator,该类型是由 EqualNotEqualGreaterLessGreaterEqual 组成的枚举。
  • RegExCompareType 类型的 RegExOperator,该类型是由 ContainsSubstring、MatchesWildcard、MatchesRegularExpression、MatchesMOM2005RegularExpression、MatchesMOM2005BooleanRegularExpression、DoesNotContainSubstring、DoesNotMatchWildcard、DoesNotMatchRegularEspression、DoesNotMatchMOM2005RegularExpression 或 DoesNotMatchMOM2005BooleanRegularExpression 组成的枚举类型

RequestEvaluationStringCriteriaType 的另一个元素是 Value,即要比较的字符串。

CustomCriteria 元素的类型为 ExpressionType

LinksEvaluationCriteria 和 ResourcesEvaluationCriteria 中的 StatusCodeCriteria 元素的类型为 ListNumericRequestCriteriaType。 ListNumericRequestCriteriaType 由以下三个元素的序列组成:ListNumericRequestMetric,只能是字符串 StatusCode;Operator,类型为前面所述的 CriteriaCompareType;Value,类型必须为 double。

用于创建有效 URL 探测的键位于 Request 元素中,并且通常位于 NumericRequestMetric 中。 如果知道要尝试评估网页的哪个部分,则可以从枚举中选择正确的指标。 但是,请确保选择正确的指标类别。 链接数据、资源数据和总数据的指标都是聚合的,可用于所有三个类别。 因此,请确保指定正确的类别,并在 Request 元素的正确部分中请求它。

如果只想评估页面的特定部分(基础页面、链接)的状态代码,请使用 StatusCodeCriteria 元素,如下所示:

<StatusCodeCriteria>
  <ListNumericRequestMetric>StatusCode</ListNumericRequestMetric>
  <Operator>GreaterEqual</Operator>
  <Value>400</Value>
</StatusCodeCriteria>

StatusCodeCriteria 节检查探测返回的成功响应(大于或等于 400 的状态代码)。

撰写

Microsoft.SystemCenter.WebApplication.UrlProbe 模块是本机模块。

模块类型 使用情况
Microsoft.SystemCenter.WebApplication.OKCriteriaMatch 当数据源模块返回值 1(正常)时用于评估的条件检测模块。
Microsoft.SystemCenter.WebApplication.WarningCriteriaMatch 当数据源模块返回值 1(警告)时用于评估的条件检测模块。
Microsoft.SystemCenter.WebApplication.ErrorCriteriaMatch 当数据源模块返回值 1(错误)时用于评估的条件检测模块。
Microsoft.SystemCenter.WebApplication.Boolean.CriteriaDoesNotMatch 当数据源模块返回值 false 时用于评估的条件检测模块。
Microsoft.SystemCenter.WebApplication.Boolean.CriteriaMatch 当数据源模块返回值 true 时用于评估的条件检测模块。

外部模块参考

模块类型 使用情况
Microsoft.SystemCenter.WebApplication.SingleUrlProbe 测试单个 URL 以确定状态代码是否不为 200。

示例

以下示例针对 URL http://www.microsoft.com 执行简单的 URL 探测。 数据源评估针对基础页面返回的状态代码,如果状态代码大于 400(指示错误状态),则返回值 3。 它还评估针对资源和链接返回的状态代码,如果状态代码大于 400(指示警告状态),则返回值 2。

<TypeDefinitions>
 <ModuleTypes>
   <DataSourceModuleType ID="MPAuthor.WebApplications.UrlDataSource" Accessibility="Public" Batching="false">
     <Configuration />
     <ModuleImplementation Isolation="Any">
       <Composite>
         <MemberModules>
           <DataSource ID="Scheduler" TypeID="MicrosoftSystemCenterWebApplicationLibrary!Microsoft.SystemCenter.WebApplication.PerProbe.Scheduler">
             <Scheduler>
               <SimpleReccuringSchedule>
                 <Interval Unit="Seconds">120</Interval>
                 <SpreadInitializationOverInterval Unit="Seconds">120</SpreadInitializationOverInterval>
               </SimpleReccuringSchedule>
               <ExcludeDates />
             </Scheduler>
             <UniquenessKey>$Target/Id$</UniquenessKey>
           </DataSource>
           <ProbeAction ID="Probe" TypeID="MicrosoftSystemCenterWebApplicationLibrary!Microsoft.SystemCenter.WebApplication.UrlProbe">
             <Proxy />
             <ProxyUserName />
             <ProxyPassword />
             <ProxyAuthenticationScheme>None</ProxyAuthenticationScheme>
             <CredentialUserName />
             <CredentialPassword />
             <AuthenticationScheme>None</AuthenticationScheme>
             <IgnoreServerCertError>false</IgnoreServerCertError>
             <FollowRedirects>true</FollowRedirects>
             <RetryCount>0</RetryCount>
             <RequestTimeout>0</RequestTimeout>
             <Requests>
               <Request>
                 <RequestID>1</RequestID>
                 <URL>http://www.microsoft.com</URL>
                 <Verb>GET</Verb>
                 <Version>HTTP/1.1</Version>
                 <HttpHeaders>
                   <HttpHeader>
                     <Name>User-Agent</Name>
                     <Value>Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)</Value>
                   </HttpHeader>
                 </HttpHeaders>
                 <Body />
                 <CheckContentChange>false</CheckContentChange>
                 <ContentHash>00000000-0000-0000-0000-000000000000</ContentHash>
                 <Depth>0</Depth>
                 <ThinkTime>0</ThinkTime>
                 <CheckInternalLinks>false</CheckInternalLinks>
                 <CheckExternalLinks>false</CheckExternalLinks>
                 <CheckResources>false</CheckResources>
                 <RequestEvaluationCriteria>
                   <StopProcessingIfWarningCriteriaIsMet>false</StopProcessingIfWarningCriteriaIsMet>
                   <StopProcessingIfErrorCriteriaIsMet>false</StopProcessingIfErrorCriteriaIsMet>
                   <BasePageEvaluationCriteria>
                     <WarningCriteria />
                     <ErrorCriteria>
                       <NumericCriteriaExpressions>
                         <NumericCriteriaExpression>
                           <NumericRequestMetric>BasePageData/StatusCode</NumericRequestMetric>
                           <Operator>GreaterEqual</Operator>
                           <Value>400</Value>
                         </NumericCriteriaExpression>
                       </NumericCriteriaExpressions>
                     </ErrorCriteria>
                   </BasePageEvaluationCriteria>
                   <LinksEvaluationCriteria>
                     <WarningCriteria>
                       <StatusCodeCriteria>
                         <ListNumericRequestMetric>StatusCode</ListNumericRequestMetric>
                         <Operator>GreaterEqual</Operator>
                         <Value>400</Value>
                       </StatusCodeCriteria>
                     </WarningCriteria>
                     <ErrorCriteria />
                   </LinksEvaluationCriteria>
                   <ResourcesEvaluationCriteria>
                     <WarningCriteria>
                       <StatusCodeCriteria>
                         <ListNumericRequestMetric>StatusCode</ListNumericRequestMetric>
                         <Operator>GreaterEqual</Operator>
                         <Value>400</Value>
                       </StatusCodeCriteria>
                     </WarningCriteria>
                     <ErrorCriteria />
                   </ResourcesEvaluationCriteria>
                   <WebPageTotalEvaluationCriteria>
                     <WarningCriteria />
                     <ErrorCriteria />
                   </WebPageTotalEvaluationCriteria>
                   <DepthEvaluationCriteria>
                     <WarningCriteria />
                     <ErrorCriteria />
                   </DepthEvaluationCriteria>
                 </RequestEvaluationCriteria>
                 <FormsAuthCredentials />
                 <CollectResponseBody>OnContentMatchCriteria</CollectResponseBody>
                 <CollectLinksHeaders>false</CollectLinksHeaders>
                 <CollectResourcesHeaders>false</CollectResourcesHeaders>
               </Request>
             </Requests>
           </ProbeAction>
         </MemberModules>
         <Composition>
           <Node ID="Probe">
             <Node ID="Scheduler" />
           </Node>
         </Composition>
       </Composite>
     </ModuleImplementation>
     <OutputType>MicrosoftSystemCenterWebApplicationLibrary!Microsoft.SystemCenter.WebApplication.WebApplicationData</OutputType>
   </DataSourceModuleType>
 </ModuleTypes>
 <MonitorTypes>
   <UnitMonitorType ID="MPAuthor.WebApplications.BasePageErrorCodeMonitor" Accessibility="Internal">
     <MonitorTypeStates>
       <MonitorTypeState ID="ErrorCodeFailure" NoDetection="false" />
       <MonitorTypeState ID="ErrorCodeSuccess" NoDetection="false" />
     </MonitorTypeStates>
     <Configuration>
       <xsd:element minOccurs="1" name="RequestID" type="xsd:integer" />
     </Configuration>
     <MonitorImplementation>
       <MemberModules>
         <DataSource ID="DS1" TypeID="MPAuthor.WebApplications.UrlDataSource" />
         <ConditionDetection ID="CDErrorCodeFailureTrue" TypeID="System!System.ExpressionFilter">
           <Expression>
             <SimpleExpression>
               <ValueExpression>
                 <XPathQuery>RequestResults/RequestResult[@Id="$Config/RequestID$"]/BasePageData/ErrorCode</XPathQuery>
               </ValueExpression>
               <Operator>NotEqual</Operator>
               <ValueExpression>
                 <XPathQuery>0</XPathQuery>
               </ValueExpression>
             </SimpleExpression>
           </Expression>
         </ConditionDetection>
         <ConditionDetection ID="CDErrorCodeFailureFalse" TypeID="System!System.ExpressionFilter">
           <Expression>
             <SimpleExpression>
               <ValueExpression>
                 <XPathQuery>RequestResults/RequestResult[@Id="$Config/RequestID$"]/BasePageData/ErrorCode</XPathQuery>
               </ValueExpression>
               <Operator>Equal</Operator>
               <ValueExpression>
                 <XPathQuery>0</XPathQuery>
               </ValueExpression>
             </SimpleExpression>
           </Expression>
         </ConditionDetection>
       </MemberModules>
       <RegularDetections>
         <RegularDetection MonitorTypeStateID="ErrorCodeFailure">
           <Node ID="CDErrorCodeFailureTrue">
             <Node ID="DS1" />
           </Node>
         </RegularDetection>
         <RegularDetection MonitorTypeStateID="ErrorCodeSuccess">
           <Node ID="CDErrorCodeFailureFalse">
             <Node ID="DS1" />
           </Node>
         </RegularDetection>
       </RegularDetections>
     </MonitorImplementation>
   </UnitMonitorType>
 </MonitorTypes>
</TypeDefinitions>

信息

** ** ** **
模块类型 ProbeActionModuleType
输入类型
输出类型 Microsoft.SystemCenter.WebApplication.WebApplicationData
实现 本机
Microsoft.SystemCenter.WebApplication.Library