This step-by-step article describes how to monitor ASP.NET
server applications. There are several ways to monitor ASP.NET applications.
Monitoring a single application by using multiple methods provides additional
assurance that an application is functioning and that all monitoring systems
are working correctly. This article describes the major aspects of an ASP.NET
application that can be monitored.
Services
The services that follow are required for ASP.NET applications. If
either of these services is stopped, ASP.NET applications do not function.
- IIS Admin Service
- World Wide Web Publishing Service
Processes
The processes that follow are required for ASP.NET applications
that run on Microsoft Internet Information Services (IIS) version 5.0. If
either of these processes is not present, ASP.NET applications do not function.
- Inetinfo.exe
- Aspnet_wp.exe
The processes that follow are required for ASP.NET applications
that run on IIS version 6.0. If either of these processes is not present,
ASP.NET applications do not function.
HTTP Responsiveness
The most effective mechanism you can use to monitor ASP.NET
applications is to simulate client browser requests. Then, you must verify that
a valid response is returned by the server. Ideally, the mechanism that you use
to monitor will issue HTTP requests and then trigger an alarm that is based on
one or more of the following criteria:
- A key phrase does not appear in the response of the ASP.NET
server.
- The HTTP response to a request for a valid page is returned
in a specified time. For example, the specified time may be less than one
second.
- The HTTP response code to a request for a valid page is
200. This indicates a successful response.
- The HTTP response code to a request for a page that must be
hidden (such as Web.config) is 500. This indicates a server error.
- The ASP.NET_SessionID cookie is included in the response
(when the application uses ASP.NET sessions).
Performance Counters
You can monitor the following counters to see problems with
ASP.NET applications. The specific threshold that you use to trigger an alarm
may vary based on the application.
Performance Object | Performance
Counter | Symptom of Problem |
ASP.NET | Applications Running | The number
changes. |
ASP.NET | Requests Rejected | The number
increases to more than zero. |
ASP.NET | Errors Total | The number increases to
more than zero or another specified threshold. |