Web Application Monitor

Microsoft.SystemCenter.WebApplicationTest.WebTestProbe.Monitor (UnitMonitor)

Monitor for Web Application Monitoring

Knowledge Base article:

Summary

This monitor indicates the status of the Web Application Availability test running against a URL from a particular location.

Causes

An unhealthy state indicates that the URL is not available, is returning data too slowly, or is not returning the expected data. The possible error conditions are detailed below, along with the causes and resolutions:

Condition

Summary & Causes

Resolution

URL Unreachable

The target URL is unavailable, causing the request to time out.

This can happen for a few reasons:

•The target URL is down for maintenance or unavailable

•There is a firewall between the watcher node and the URL

•System proxy settings are not set for the watcher node (internal locations)

Try the following troubleshooting steps to attempt to fix the problem

•Ping the target URL to ensure it's on the network

•Configure the system proxy settings on each of the watcher nodes

Transaction Response Time Exceeded

The response time of the page was larger than the response time threshold specified for the test.

This can happen due to network latency issues or load of the server hosting the web page. You may also have specified a timeout value that is too low.

Check the load of the server hosting the web page. Check for network latency issues.

Check the web application monitoring from the Authoring space and check that the specified timeout criteria is not too low.

Test timed out

The test timed out.

This can happen due to network latency issues or load of the server hosting the web page. You may also have specified a timeout value that is too low.

Check the load of the server hosting the web page. Check for network latency issues.

Check the web application monitoring from the Authoring space and check that the specified timeout criteria is not too low.

DNS Resolution Failure

Could not resolve the user supplied URL through the watcher nodes Domain Name Service.

This can happen for a few reasons:

•The DNS client side cache has a stale entry

•The DNS infrastructure not available

•The watcher node DNS settings are out of date or incorrect

•DNS has a stale entry for the supplied URL and is returning the wrong IP address

Try the following troubleshooting steps to attempt to fix the problem

•On a Windows Computer, at the command line type:

ipconfig /flushdns

Then type:

ipconfig /registerdns

•Check with your network or domain administrator if there is any problems with the DNS infrastructure that the watcher node is configured to use.

•Check the URL can be pinged. Note that in some cases, the network path from the watcher node to the URL may not allow ICMP, so ping may fail.

Do this by pinging by the URL name you supplied in the wizard. Type ping -a [URL]. For example, if the IP Address is www.microsoft.com:

ping www.microsoft.com

Error Code Failure

An error was encountered while processing an URL.

This can happen for a few reasons:

•The page is unreachable. If behind a proxy, check if the proxy settings are correct.

•Unexpected API call failures. Multiple reasons could cause this, for instance a memory allocation error.

•The site or URL is not accessible or is down.

Try to access the same URL from an internet browser like Internet Explorer.

Status Code Failure

Status code does not match the supplied criteria

This can happen for a few reasons:

•The target URL is offline

•The watcher node doesn't have the appropriate permissions

•There may be a firewall between the watcher node and the target device

Try the following troubleshooting steps to attempt to fix the problem

•Open a browser to confirm that the target URL is online

•Ensure that the Run As account used by the watcher node has the appropriate permissions to the target data source

•Check if the Firewall is enabled on either the target machine or the watcher node. If it is, create an exclusion for the application you are monitoring.

Content Match Failure

One of the resources on this page does not match the status code criteria.

This can happen when one or more resources (e.g. images, cascading style sheets, scripts, etc.) on the page results in a status code that doesn't match the criteria provided by the wizard by default.

Edit the web application monitoring from the Authoring space and check the criteria for links

Untrusted CA

SSL Certificate CA Root is not trusted.

This can happen when the target URL is not using an SSL certificate that is signed by a public internet root CA.

Contact the administrator of the URL to use a publicly signed SSL certificate or add the Certificate to the watcher nodes trusted root CA store if you are in fact sure you should be trusting this source. For example if you have an internal Root CA that supplies SSL certificates.

Certificate CN invalid

The CN for the certificate is invalid.

This can happen when the certificate is invalid or the watcher node doesn't have the appropriate permissions

Contact the administrator of the URL to ensure they have a properly configured SSL certificate.

SSL Certificate Expired

SSL Certificate has expired.

The servers servicing this URL has an expired SSL Certificate

Contact the administrator of the URL to update their SSL certificate

Resources Status Code Failure

One of the resources on this page does not match the status code criteria.

This can happen when one or more resources (e.g. images, cascading style sheets, scripts, etc.) on the page results in a status code that doesn't match the criteria provided by the wizard by default.

Edit the web application monitoring from the Authoring space and check the criteria for resources

Resources Error Code Failure

An error was encountered while processing an URLs resources.

This can happen for a few reasons:

•The page is unreachable. If behind a proxy, check if the proxy settings are correct.

•Unexpected API call failures. Multiple reasons could cause this, for instance a memory allocation error.

•The site or URL is not accessible or is down.

Edit the web application monitoring from the Authoring space and check the criteria for resources

You receive another error code not shown in the table above

If the error code you are seeing is not in the table above, please do the following

  • Copy the rightmost four digits of the error code into calculator (this is a hexadecimal number), and convert this to a decimal number

  • Go to http://go.microsoft.com/fwlink/?LinkID=228928 and look up the WinHTTP error corresponding to the error code.

Take the appropriate action depending on the error code.

You receive a status code evaluation error

Go to http://go.microsoft.com/fwlink/?LinkId=228960

to see the explanation of each status code.

Take the appropriate action depending on the status code.

Resolutions

See the resolutions column for each error condition in the table above.

Element properties:

TargetMicrosoft.SystemCenter.WebApplicationTest.WebTest
Parent MonitorMicrosoft.SystemCenter.WebApplicationTest.AggregateMonitor
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SystemCenter.WebApplicationTest.WebTestProbe.MonitorType
RemotableTrue
AccessibilityPublic
Alert Message
Web Application Unavailable: {2}
{0} has a problem. Please see the alert context tab for details of the failure. The Transaction Response Time was {1} seconds.
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.WebApplicationTest.WebTestProbe.Monitor" TypeID="Microsoft.SystemCenter.WebApplicationTest.WebTestProbe.MonitorType" Target="Microsoft.SystemCenter.WebApplicationTest.WebTest" ParentMonitorID="Microsoft.SystemCenter.WebApplicationTest.AggregateMonitor" Enabled="true" Accessibility="Public">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.WebApplicationTest.WebTestProbe.Monitor.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/RequestResults/RequestResult/BasePageData/RequestUrl$</AlertParameter1>
<AlertParameter2>$Data/Context/TransactionResponseTime$</AlertParameter2>
<AlertParameter3>$Target/Property[Type="Microsoft.SystemCenter.WebApplicationTest.WebTestBase"]/Context$</AlertParameter3>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Green" MonitorTypeStateID="WebTestPassed" HealthState="Success"/>
<OperationalState ID="Yellow" MonitorTypeStateID="WebTestFailedWarning" HealthState="Warning"/>
<OperationalState ID="Red" MonitorTypeStateID="WebTestFailedError" HealthState="Error"/>
</OperationalStates>
<Configuration/>
</UnitMonitor>