I was recently working with the Microsoft.SystemCenter.WebApplication.UrlProbe module and wanted to know exactly what I could pass through an expression filter and potentially include in an alert description.  It’s easy enough to get this after creating a monitor and simulating the workflow, but sometimes this information is needed while authoring new composites/types.  Of course, this is before any opportunity to simulate the monitoring workflow.

So, just as a reference, I am posting this runtime data here.  Maybe it will help others in the future.

<DataItems>
    - <DataItem type="System.ConsolidatorData" time="2011-06-22T00:21:29.0001140-05:00" sourceHealthServiceId="B664105E-B9B4-F98A-8E28-EBC23610184F">
        <TimeWindowStart>2011-06-22T00:20:28.9996822-05:00</TimeWindowStart>
        <TimeWindowEnd>2011-06-22T00:22:38.9996821-05:00</TimeWindowEnd>
        <TimeFirst>2011-06-22T00:20:28.9996822-05:00</TimeFirst>
        <TimeLast>2011-06-22T00:21:29.0001140-05:00</TimeLast>
        <Count>2</Count>
        - <Context>
            - <DataItem type="Microsoft.SystemCenter.WebApplication.WebApplicationData" time="2011-06-22T00:21:29.0001140-05:00" sourceHealthServiceId="B664105E-B9B4-F98A-8E28-EBC23610184F">
                - <RequestResults>
                    - <RequestResult Id="1">
                        <State>1</State>
                        - <BasePageData>
                            <ResponseUrl>http://yourdomain.com:80/testpage</ResponseUrl>
                            <DNSResolutionTime>0</DNSResolutionTime>
                            <TCPConnectTime>0</TCPConnectTime>
                            <TimeToFirstByte>0</TimeToFirstByte>
                            <TimeToLastByte>0</TimeToLastByte>
                            <RedirectTime>0</RedirectTime>
                            <DownloadTime>0</DownloadTime>
                            <TotalResponseTime>0</TotalResponseTime>
                            <ContentSize>0</ContentSize>
                            <StatusCode>0</StatusCode>
                            <ErrorCode>2147954402</ErrorCode>
                            <ContentHash>{00000000-0000-0000-0000-000000000000}</ContentHash>
                            <ResponseHeaders />
                            <ContentChanged Type="Boolean">false</ContentChanged>
                            <ResponseBody />
                            <SecureFailureCode>0</SecureFailureCode>
                            <DaysToExpiry>4294967295</DaysToExpiry>
                            <RequestUrl>http://yourdomain.com:80/testpage</RequestUrl>
                            - <RequestHeaders>
                                - <![CDATA[ 
GET /test2 HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Connection: Keep-Alive
 
 
 
  ]]>
                            </RequestHeaders>
                            <Verb>GET</Verb>
                            <Version>HTTP/1.1</Version>
                            <DNSResolutionTimeEvalResult>0</DNSResolutionTimeEvalResult>
                            <TCPConnectTimeEvalResult>0</TCPConnectTimeEvalResult>
                            <TimeToFirstByteEvalResult>0</TimeToFirstByteEvalResult>
                            <TimeToLastByteEvalResult>0</TimeToLastByteEvalResult>
                            <RedirectTimeEvalResult>0</RedirectTimeEvalResult>
                            <DownloadTimeEvalResult>0</DownloadTimeEvalResult>
                            <TotalResponseTimeEvalResult>0</TotalResponseTimeEvalResult>
                            <ContentSizeEvalResult>0</ContentSizeEvalResult>
                            <ResponseBodyEvalResult>0</ResponseBodyEvalResult>
                            <StatusCodeEvalResult>0</StatusCodeEvalResult>
                            <ErrorCodeEvalResult>0</ErrorCodeEvalResult>
                            <CustomCriteriaEvalResult>0</CustomCriteriaEvalResult>
                            <DaysToExpiryEvalResult>0</DaysToExpiryEvalResult>
                            <CertificateExpired Type="Boolean">false</CertificateExpired>
                            <CertificateAuthorityUntrusted Type="Boolean">false</CertificateAuthorityUntrusted>
                            <CertificateCNInvalid Type="Boolean">false</CertificateCNInvalid>
                            <DNSResolutionFailure Type="Boolean">false</DNSResolutionFailure>
                            <Unreachable Type="Boolean">true</Unreachable>
                        </BasePageData>
                        - <LinkData>
                            <AggregateDNSResolutionTime>0</AggregateDNSResolutionTime>
                            <AggregateTCPConnectTime>0</AggregateTCPConnectTime>
                            <AggregateTimeToFirstByte>0</AggregateTimeToFirstByte>
                            <AggregateTimeToLastByte>0</AggregateTimeToLastByte>
                            <AggregateRedirectTime>0</AggregateRedirectTime>
                            <AggregateDownloadTime>0</AggregateDownloadTime>
                            <AggregateTotalResponseTime>0</AggregateTotalResponseTime>
                            <AggregateContentSize>0</AggregateContentSize>
                            <AggregateDNSResolutionTimeEvalResult>0</AggregateDNSResolutionTimeEvalResult>
                            <AggregateTCPConnectTimeEvalResult>0</AggregateTCPConnectTimeEvalResult>
                            <AggregateTimeToFirstByteEvalResult>0</AggregateTimeToFirstByteEvalResult>
                            <AggregateTimeToLastByteEvalResult>0</AggregateTimeToLastByteEvalResult>
                            <AggregateRedirectTimeEvalResult>0</AggregateRedirectTimeEvalResult>
                            <AggregateDownloadTimeEvalResult>0</AggregateDownloadTimeEvalResult>
                            <AggregateTotalResponseTimeEvalResult>0</AggregateTotalResponseTimeEvalResult>
                            <AggregateContentSizeEvalResult>0</AggregateContentSizeEvalResult>
                            <StatusCodeEvalResult>0</StatusCodeEvalResult>
                            <ErrorCodeEvalResult>0</ErrorCodeEvalResult>
                        </LinkData>
                        - <ResourceData>
                            <AggregateDNSResolutionTime>0</AggregateDNSResolutionTime>
                            <AggregateTCPConnectTime>0</AggregateTCPConnectTime>
                            <AggregateTimeToFirstByte>0</AggregateTimeToFirstByte>
                            <AggregateTimeToLastByte>0</AggregateTimeToLastByte>
                            <AggregateRedirectTime>0</AggregateRedirectTime>
                            <AggregateDownloadTime>0</AggregateDownloadTime>
                            <AggregateTotalResponseTime>0</AggregateTotalResponseTime>
                            <AggregateContentSize>0</AggregateContentSize>
                            <AggregateDNSResolutionTimeEvalResult>0</AggregateDNSResolutionTimeEvalResult>
                            <AggregateTCPConnectTimeEvalResult>0</AggregateTCPConnectTimeEvalResult>
                            <AggregateTimeToFirstByteEvalResult>0</AggregateTimeToFirstByteEvalResult>
                            <AggregateTimeToLastByteEvalResult>0</AggregateTimeToLastByteEvalResult>
                            <AggregateRedirectTimeEvalResult>0</AggregateRedirectTimeEvalResult>
                            <AggregateDownloadTimeEvalResult>0</AggregateDownloadTimeEvalResult>
                            <AggregateTotalResponseTimeEvalResult>0</AggregateTotalResponseTimeEvalResult>
                            <AggregateContentSizeEvalResult>0</AggregateContentSizeEvalResult>
                            <StatusCodeEvalResult>0</StatusCodeEvalResult>
                            <ErrorCodeEvalResult>0</ErrorCodeEvalResult>
                        </ResourceData>
                        - <TotalData>
                            <AggregateDNSResolutionTime>0</AggregateDNSResolutionTime>
                            <AggregateTCPConnectTime>0</AggregateTCPConnectTime>
                            <AggregateTimeToFirstByte>0</AggregateTimeToFirstByte>
                            <AggregateTimeToLastByte>0</AggregateTimeToLastByte>
                            <AggregateRedirectTime>0</AggregateRedirectTime>
                            <AggregateDownloadTime>0</AggregateDownloadTime>
                            <AggregateTotalResponseTime>0</AggregateTotalResponseTime>
                            <AggregateContentSize>0</AggregateContentSize>
                            <AggregateDNSResolutionTimeEvalResult>0</AggregateDNSResolutionTimeEvalResult>
                            <AggregateTCPConnectTimeEvalResult>0</AggregateTCPConnectTimeEvalResult>
                            <AggregateTimeToFirstByteEvalResult>0</AggregateTimeToFirstByteEvalResult>
                            <AggregateTimeToLastByteEvalResult>0</AggregateTimeToLastByteEvalResult>
                            <AggregateRedirectTimeEvalResult>0</AggregateRedirectTimeEvalResult>
                            <AggregateDownloadTimeEvalResult>0</AggregateDownloadTimeEvalResult>
                            <AggregateTotalResponseTimeEvalResult>0</AggregateTotalResponseTimeEvalResult>
                            <AggregateContentSizeEvalResult>0</AggregateContentSizeEvalResult>
                            <StatusCodeEvalResult>0</StatusCodeEvalResult>
                            <ErrorCodeEvalResult>0</ErrorCodeEvalResult>
                        </TotalData>
                        - <DeepCheckData>
                            <StatusCodeEvalResult>0</StatusCodeEvalResult>
                        </DeepCheckData>
                    </RequestResult>
                </RequestResults>
                <TransactionResponseTime>0</TransactionResponseTime>
                <TransactionResponseTimeEvalResult>0</TransactionResponseTimeEvalResult>
                <CollectPerformanceData Type="Boolean">true</CollectPerformanceData>
            </DataItem>
        </Context>
    </DataItem>
</DataItems>

 

FYI – this example includes consolidator output as well, which means there would be an extra Context/DataItem in your alert description variable.

Example with consolidator:
$Data/Context/DataItem/Context/DataItem/RequestResults/RequestResult[@Id=1]/BasePageData/ErrorCode$

Example without consolidator:
$Data/Context/DataItem/RequestResults/RequestResult[@Id=1]/BasePageData/ErrorCode$