Condividi tramite


Microsoft.SystemCenter.WebApplication.UrlProbe

Il modulo del probe Microsoft.SystemCenter.WebApplication.UrlProbe si connette a uno o più URL e restituisce Microsoft.SystemCenter.WebApplication.WebApplicationData. Questi dati possono quindi essere usati con altri moduli da Microsoft.SystemCenter.WebApplication.Library per valutare lo stato di integrità di vari aspetti del sito Web di destinazione.

Utilizzo

La funzione principale di Microsoft.SystemCenter.WebApplication.UrlProbe è l'invio di una richiesta a uno o più URL e la segnalazione dei risultati. Il formato della richiesta è un tipo complesso e viene usato con altri moduli per valutare lo stato di integrità dell'URL di destinazione. Dato che è possibile eseguire un numero elevato di richieste con un singolo probe e considerando che i risultati della richiesta possono contenere una quantità notevole di dati, il probe stesso esegue parte della valutazione della richiesta prima di produrre l'output. Ad esempio, anziché fornire il codice di stato dall'URL sottoposto a query come output, il modulo confronta il codice di stato rispetto a un intervallo specificato e fornisce un codice di esito positivo o negativo come output. Il modulo può anche corrispondere al contenuto del codice HTML restituito dalla richiesta, ad esempio la corrispondenza dell'errore di parola per determinare se viene restituita una pagina di errore. Questa valutazione eseguita dal modulo elimina la necessità di una logica complessa di corrispondenza delle espressioni nella regola o nel monitor.

Questo modulo viene in genere attivato usando Microsoft.SystemCenter.WebApplication.PerProbe.Scheduler.

Il modulo Microsoft.SystemCenter.WebApplication.UrlProbe viene comunemente usato con un numero di moduli di rilevamento delle condizioni, destinati a valutare l'output. Il modulo valuta diversi aspetti dell'integrità dell'URL in base ai parametri definiti nella richiesta e restituisce l'output appropriato per ogni oggetto.

Alcuni di questi parametri vengono valutati direttamente in uno stato di integrità. Per questi parametri, si useranno tre moduli di rilevamento di condizioni, ognuno dei quali corrisponde a un numero intero specifico di output del probe, a indicare un determinato stato di integrità, come illustrato nella tabella seguente:

Modulo di rilevamento condizioni Valore corrispondenza
Microsoft.SystemCenter.WebApplication.OKCriteriaMatch 1
Microsoft.SystemCenter.WebApplication.WarningCriteriaMatch 2
Microsoft.SystemCenter.WebApplication.ErrorCriteriaMatch 3

Altri parametri restituiscono uno stato binario. In questi casi si usano due moduli di rilevamento di condizioni, ognuno dei quali corrisponde a un tipo booleano del probe, come indicato nella tabella seguente:

Modulo di rilevamento condizioni Valore corrispondenza
Microsoft.SystemCenter.WebApplication.Boolean.CriteriaDoesNotMatch false
Microsoft.SystemCenter.WebApplication.Boolean.CriteriaMatch true

Infine, vengono restituiti alcuni valori non elaborati, che è possibile raccogliere per l'analisi e i report oppure usare con i moduli di rilevamento di condizioni di filtro delle espressioni.

Definizione dei tipi

<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>

Parametri

Il modulo Microsoft.SystemCenter.WebApplication.UrlProbe supporta i parametri di configurazione descritti nella tabella seguente.

Parametro Tipo Overridable Descrizione
Proxy Stringa True Parametro obbligatorio, ma può essere vuoto. Specifica il nome del server proxy se l'agente ne richiede uno per accedere all'URL.
ProxyUserName Stringa True Parametro obbligatorio, ma può essere vuoto. Specifica il nome utente da usare con il server proxy se il server proxy specificato richiede l'autenticazione.
ProxyPassword Stringa True Parametro obbligatorio, ma può essere vuoto. Specifica la password da usare con il server proxy se il server proxy specificato richiede l'autenticazione.
ProxyAuthenticationScheme AuthenticationSchemeType Vero Parametro obbligatorio. Specifica lo schema di autenticazione da usare con il server proxy se l'agente ne richiede uno per accedere all'URL. I valori validi sono None, Basic, NTLM, Digest e Negotiate.
CredentialUserName Stringa Vero Parametro obbligatorio, ma può essere vuoto. Specifica il nome utente da usare con l'URL sottoposto a query.
CredientialPassword Stringa True Parametro obbligatorio, ma può essere vuoto. Specifica la password da usare con l'URL sottoposto a query.
AuthenticationScheme AuthenticationSchemeType True Parametro obbligatorio. Specifica lo schema di autenticazione da usare con l'URL sottoposto a query. I valori validi sono None, Basic, NTLM, Digest e Negotiate.
IgnoreServerCertError Boolean True Specifica se gli errori del certificato del server dovranno essere ignorati.
FollowRedirects Boolean True Parametro obbligatorio. Specifica se la query dovrà seguire i reindirizzamenti dell'URL.
RetryCount Integer True Parametro obbligatorio. Specifica il numero di volte in cui il modulo dovrà riprovare l'URL specificato prima del timeout.
RequestTimeout Integer True Parametro obbligatorio. Specifica la durata del tempo di attesa di una risposta dall'URL specificato prima di riprovare.
Richieste Tipo complesso Falso Raccolta di elementi Request (vedere di seguito).
TransactionResponseTimeWarningCriteria RequestEvaluationNumericCriteriaType Falso Parametro facoltativo. Specifica il tempo di risposta in corrispondenza del quale specificare un avviso.
TransactionResponseTimeErrorCriteria RequestEvaluationNumericCriteriaType Falso Parametro facoltativo. Specifica il tempo di risposta in corrispondenza del quale specificare un errore.
PerformanceCollectionFrequencyInCycles Integer Falso Parametro facoltativo. Specifica quanti intervalli di query devono essere completati prima di ogni raccolta. Se il valore è 1, i contatori verranno raccolti ogni volta che viene eseguita la sessione del browser. Se è 2, i contatori verranno raccolti solo ogni seconda volta che viene eseguita la sessione del browser e così via.

Elemento Request

L'elemento Requests è una raccolta di uno o più elementi Request. A ogni elemento Request è associato un sottoelemento RequestID che identifica in modo univoco la richiesta all'interno di quel set di Requests. Le richieste vengono elaborate nell'ordine in base al relativo RequestID. L'elemento Request è costituito dagli elementi seguenti:

elemento Tipo Descrizione
RequestID Integer Poiché ogni probe può avviare più richieste, RequestID identifica in modo univoco ogni richiesta e specifica l'ordine di elaborazione delle richieste.
URL Stringa L'URL da sottoporre a query.
Verbo VerbType Indica il verbo da usare con la richiesta dell'URL. Può accettare uno dei valori seguenti: GET, HEAD o POST.
Versione VersionType Indica il tipo HTTP della richiesta. I valori validi sono HTTP/1.0 e HTTP/1.1.
HttpHeaders HttpHeadersType Le intestazioni HTTP della richiesta. HttpHeadersType è un tipo complesso costituito da 0 o più elementi HttpHeader, di tipo NameValueType. NameValueType, a sua volta è costituito da due elementi obbligatori, Name e Value.
Corpo Stringa Il valore sarà vuoto se VerbType è GET o HEAD. Se VerbType è POST, si tratta del corpo della richiesta inviata dal post.
CheckContentChange Boolean Se true, fornisce una convalida aggiuntiva del contenuto.
ContentHash ContentHashType È costituito da una stringa di 36 caratteri esadecimali 8-4-4-4-12.
Livello nidificazione Integer Specifica il numero di livelli dei collegamenti esterni da raccogliere. Se il valore è 0, vengono valutati solo i collegamenti nella pagina stessa. Se il valore è 1, vengono valutati i collegamenti in ogni pagina di destinazione. Se il valore è 2, vengono valutati i collegamenti in tale numero di pagine di destinazione e così via.
ThinkTime Integer La quantità di tempo di attesa tra la richiesta e la raccolta del corpo.
CheckInternalLinks Boolean Abilita la raccolta dello stato di ogni collegamento interno e include i collegamenti interni nella valutazione del monitor per la richiesta. Un collegamento interno è un collegamento che fa riferimento a una posizione nella stessa pagina.
CheckExternalLinks Boolean Abilita la raccolta dello stato di ogni collegamento esterno e include i collegamenti esterni nella valutazione del monitor per la richiesta. Un collegamento esterno è un collegamento che fa riferimento a una posizione all'esterno della pagina corrente.
CheckResources Boolean Se true, il monitor restituisce lo stato delle risorse per la pagina. Invece di misurare ogni singola risorsa, viene valutato il totale di tutte le risorse. Se false, il monitoraggio delle risorse non è funzionale per la richiesta.
RequestEvaluationCriteria RequestEvaluationCriteriaType Un tipo complesso che valuta i dati restituiti dalla richiesta (vedere di seguito).
FormsAuthCredentials FormsAuthCredentialsType Tipo complesso costituito da stringhe CredentialName, UserName e Password .

Elemento RequestEvaluationCriteria

L'elemento RequestEvaluationCriteria offre la possibilità di valutare i dati restituiti dalla richiesta e di determinare l'integrità dell'URL. Ogni elemento è un tipo complesso, che contiene criteri che possono soddisfatti in uno di tre modi:

  • Criteri numerici. Si tratta del tipo più comune e viene usato per valutare un valore misurabile, ad esempio un codice di stato restituito o un tempo di risposta.
  • Criteri di corrispondenza a contenuto. Vengono usati per valutare il contenuto dell'HTML restituito e determinare se contiene una determinata stringa di testo.
  • Criteri personalizzati. Si tratta di un'espressione che corrisponde a una varietà di diversi parametri disponibili definiti dall'utente.

È possibile usare un numero qualsiasi di criteri numerici o personalizzati, ma è consentito un unico criterio di corrispondenza a contenuto. RequestEvaluationCriteriaType è costituito dagli elementi seguenti:

elemento Tipo Descrizione
StopProcessingIfWarningCriteriaIsMet Boolean Se true, arresta l'elaborazione della richiesta quando viene soddisfatta la condizione di avviso.
StopProcessingIfErrorCriteriaIsMet Boolean Se true, arresta l'elaborazione della richiesta quando viene soddisfatta la condizione di errore.
BasePageEvaluationCriteria Tipo complesso È costituito da due elementi che valutano la pagina di base, WarningCriteria e ErrorCriteria, entrambi di tipo BasePageEvaluationCriteriaType.
LinksEvaluationCriteria Tipo complesso È costituito da due elementi che valutano i collegamenti nella pagina, WarningCriteria e ErrorCriteria, entrambi di tipo ChildRequestsEvaluationCriteriaType. ChildRequestsEvaluationCriteriaType è costituito da zero o più NumeriCriteriaExpressions di tipo RequestEvaluationNumericCriteriaType, zero o uno StatusCodeCriteria di tipo ListNumericRequestCriteriaType e zero o più CustomCriteria di tipo ExpressionType.
ResourcesEvaluationCriteria Tipo complesso È costituito da due elementi che valutano le risorse nella pagina, WarningCriteria e ErrorCriteria, entrambi di tipo ChildRequestsEvaluationCriteriaType. ChildRequestsEvaluationCriteriaType è costituito da zero o più NumeriCriteriaExpressions di tipo RequestEvaluationNumericCriteriaType, zero o uno StatusCodeCriteria di tipo ListNumericRequestCriteriaType e zero o uno personalizzatoCriteria di tipo ExpressionType.
WebPageTotalEvaluationCritieria Tipo complesso È costituito da due elementi, WarningCriteria e ErrorCriteria, entrambi di tipo WebPageTotalEvaluationCriteriaType (vedere di seguito). WebPageTotalEvaluationCriteriaType misura le statistiche totali per la pagina, ossia pagina base, collegamenti e risorse, ed è di tipo WebPageTotalEvaluationCriteriaType. WebPageTotalEvaluationCriteriaType è costituito solo da zero o più istanze di NumericCriteriaExpression, ovvero RequestEvaluationNumericCriteriaType, descritto di seguito.
DepthEvaluationCriteria Tipo complesso È costituito da due elementi, WarningCriteria e ErrorCriteria, entrambi di tipo DepthEvaluationCriteriaType. DepthEvaluationCriteriaType è costituito da zero o una istanza di ListNumericRequestCriteriaType, illustrata di seguito.

Il tipo più comune di valutazione è numerico, in cui un elemento di dati restituiti, ad esempio un tempo di risoluzione, viene confrontato con una soglia configurata. NumericCriteriaExpression è di tipo RequestEvaluationNumericCriteriaType, con tre elementi: NumericRequestMetric, Operator e Value.

NumericRequestMetric è di tipo NumericRequestMetricType, che è un'enumerazione costituita da una di diverse metriche disponibili. Ogni metrica è associata a uno specifico criterio di valutazione, come indicato di seguito:

Criteri Metrica
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
Nessuno TransactionResponseTime

L'elemento Operator è di tipo CriteriaCompareType, costituito da uno dei seguenti elementi: Equal, NotEqual, Greater, Less, GreaterEqual o LessEqual.

L'elemento Value è di tipo double e specifica il tipo di valore da confrontare.

Se l'elemento di dati restituito da valutare non è numerico, ad esempio una valutazione di contenuto, sarà necessario confrontarlo con una stringa. ContentMatchCriteria è di tipo RequestEvaluationStringCriteriaType, con due sottoelementi: Operatore e Valore. Operator può essere di uno di due tipi:

  • SimpleStringOperator, che è di tipo CriteriaCompareType, un'enumerazione costituita da Equal, NotEqual, Greater, Less o GreaterEqual.
  • RegExOperator, di tipo RegExCompareType, che è un tipo di enumerazione costituito da ContainsSubstring, MatchWildcard, MatchesRegularExpression, MatchMOM2005RegularExpression, MatchMOM2005BooleanRegularExpression, DoesNotContainSubstring, DoesNotMatchWildcard, DoesNotMatchRegularEspression, DoesNotMatchMOM2005RegularExpression o DoesNotMatchMOM2005BooleanRegularExpression

L'altro elemento di RequestEvaluationStringCriteriaType è Value, che è una stringa da confrontare.

L'elemento CustomCriteria è di tipo ExpressionType.

L'elemento StatusCodeCriteria trovato in LinksEvaluationCriteria e ResourcesEvaluationCriteria è di tipo ListNumericRequestCriteriaType. ListNumericRequestCriteriaType è costituito da una sequenza di tre elementi: ListNumericRequestMetric, che può essere solo la stringa StatusCode, Operator, che è di CriteriaCompareType, coperta in precedenza e valore, che deve essere di tipo doppio.

La chiave per creare un probe di URL utile è nell'elemento Request e solitamente nell'elemento NumericRequestMetric. Se si conosce la parte della pagina Web che si sta tentando di valutare, è possibile scegliere la metrica corretta dall'enumerazione. Assicurarsi tuttavia di selezionare la categoria corretta della metrica. Le metriche per i dati di collegamento, i dati delle risorse e i dati totali sono tutte aggregazioni e sono disponibili per tutte e tre le categorie. Assicurarsi quindi di specificare la categoria corretta e chiederla nella parte corretta dell'elemento Request .

Se si vuole valutare solo il codice di stato per una determinata parte della pagina (pagina di base, collegamenti), usare l'elemento StatusCodeCriteria , simile al seguente:

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

Questa sezione StatusCodeCriteria cerca una risposta di operazione riuscita del probe (codice di stato maggiore o uguale a 400).

Composizione

Il modulo Microsoft.SystemCenter.WebApplication.UrlProbe è nativo.

Tipo di modulo Utilizzo
Microsoft.SystemCenter.WebApplication.OKCriteriaMatch Modulo di rilevamento di condizioni usato per valutare quando il modulo dell'origine dati restituisce il valore 1 (OK).
Microsoft.SystemCenter.WebApplication.WarningCriteriaMatch Modulo di rilevamento di condizioni usato per valutare quando il modulo dell'origine dati restituisce il valore 1 (avviso).
Microsoft.SystemCenter.WebApplication.ErrorCriteriaMatch Modulo di rilevamento di condizioni usato per valutare quando il modulo dell'origine dati restituisce il valore 1 (errore).
Microsoft.SystemCenter.WebApplication.Boolean.CriteriaDoesNotMatch Modulo di rilevamento di condizioni usato per valutare quando il modulo dell'origine dati restituisce il valore false.
Microsoft.SystemCenter.WebApplication.Boolean.CriteriaMatch Modulo di rilevamento di condizioni usato per valutare quando il modulo dell'origine dati restituisce il valore true.

Riferimenti a moduli esterni

Tipo di modulo Utilizzo
Microsoft.SystemCenter.WebApplication.SingleUrlProbe Testa un singolo URL per determinare se il codice di stato è diverso da 200.

Esempio

L'esempio seguente esegue un semplice probe di URL rispetto all'URL http://www.microsoft.com. L'origine dati valuta il codice di stato restituito per la pagina base e restituisce il valore 3 se il codice è maggiore di 400, a indicare uno stato di errore. Valuta anche il codice di stato restituito per le risorse e i collegamenti, quindi restituisce il valore 2 se il codice è maggiore di 400, a indicare uno stato di avviso.

<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>

Informazioni

** ** ** **
Tipo di modulo ProbeActionModuleType
Tipo di input Nessuno
Tipo di output Microsoft.SystemCenter.WebApplication.WebApplicationData
Implementazione Nativo
Libreria Microsoft.SystemCenter.WebApplication.Library