Microsoft.SystemCenter.WebApplication.WebApplicationData (URL Probe Runtime Output)
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>https://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>https://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$