Learn how your company can work directly with me or one of my peers.
The benefit is not just having an experienced engineer helping you manage the health of your environment. Through Premier Field Engineering, your company will have access to a wealth of knowledge from all of PFE and a channel into the product group to answer the most complex questions.
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>
</LinkData>
- <ResourceData>
</ResourceData>
- <TotalData>
</TotalData>
- <DeepCheckData>
</DeepCheckData>
</RequestResult>
</RequestResults>
<TransactionResponseTime>0</TransactionResponseTime>
<TransactionResponseTimeEvalResult>0</TransactionResponseTimeEvalResult>
<CollectPerformanceData Type="Boolean">true</CollectPerformanceData>
</DataItem>
</Context>
</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$