Monitor an ASP.NET Application
Applies To: Operations Manager 2012
In System Center 2012 – Operations Manager, you can monitor ASP.NET applications and web services from server- and client-side perspectives to get details about application availability and performance that can help you pinpoint solutions. Allowing you to specify settings, the types of events to collect, the performance goals to measure, and which servers to monitor, Operations Manager application monitoring provides insight into how web-based applications are running. You can see how frequently a problem is occurring, how a server was performing when a problem occurred, and the chain of events related to the slow request or method that is unreliable. This is the information needed to partner with software developers and database administrators to help ensure that application availability and performance are at optimal levels.
Current AVIcode customers: Operations Manager has .NET application monitoring capabilities that can replace AVIcode 5.7 for applications hosted with IIS7. If you are using AVIcode to monitor applications and would like to upgrade to Operations Manager, you must uninstall the AVIcode agents from the servers hosting them, repair install the Operations Manager agents if they have already been installed, and configure monitoring using the .NET Application Performance Monitoring wizard.
AVIcode 5.7 management packs are not supported in Operations Manager.
Before you begin
Import the IIS7 management pack (Microsoft.Windows.InternetInformationServices.2008.mp) and the .NET Monitoring management pack (Microsoft.SystemCenter.Apm.Web.IIS7.mp). Note that the Microsoft.SystemCenter.Apm.Web.IIS7.mp management pack is included in the download package in the management packs folder—it is not available on the management pack catalog. For information about importing management packs, see Import a Management Pack. Additionally, make sure that IIS7 websites, applications, and services have been discovered.
After you import the management packs, wait until your applications have been discovered and you see them in the ASP.NET Web Application Inventory view before you begin monitoring.
The ASP.NET Web Application Inventory view
Here are some questions to answer before you begin:
What are the names of the applications you want to monitor?
Which servers host the applications you want to monitor?
Do you want to monitor performance events?
Do you want to monitor exception events?
What threshold signifies a performance issue with a request?
Do you want to monitor both server and browser performance?
If you plan to monitor browser performance, check application compatibility before you begin to configure client-side monitoring for the ASP.NET application. You will need this information during the client-side application monitoring steps of the wizard.
To check client-side application monitoring compatibility
To see a view of all the ASP.NET applications that Operations Manager finds, in the Operations Manager console, in the navigation pane, click the Monitoring button, expand Application Monitoring, expand .NET Monitoring, and click ASP.NET Web Application Inventory.
To check applications for compatibility with client-side monitoring, click an application name and in the Tasks pane, in the IIS 7 ASP.NET Application Endpoint Tasks section, click Check Client Side Monitoring Compatibility, and then click Run. This task does an analysis and lets you know if the application has compatibility issues with client-side monitoring.
The results page displays whether incompatibilities are found. If an application has incompatibilities, you will want to exclude the incompatible pages from client-side monitoring later when you are configuring client-side monitoring.
Configure and monitor.NET applications (server-side perspective)
Server-side application monitoring allows you to measure details about the performance and reliability of applications running in your server environment.
To configure monitoring for a .NET application (server-side perspective)
To open the .NET Application Performance Monitoring template, in the Operations Manager console, in the navigation pane, click the Authoring button, click Management Pack Templates, click .NET Application Performance Monitoring, and then, in the Tasks pane, click the Add Monitoring Wizard where you will name and configure the application group you want to monitor.
Location of .NET Application Performance Monitoring
In the Add Monitoring Wizard on the Monitoring Type page, select .NET Application Performance Monitoring, and then click Next. This template allows you to monitor ASP.NET applications and web services hosted in IIS7. You can select one or more applications or services discovered by the IIS7 management pack and configure monitoring of performance and exception events.
On the General Properties page, enter a friendly name and description for the application group you are creating.
In the Select destination management pack menu, select the management pack that will store the settings that are specific to this instance of the template. To create a new management pack, click New. In the Create a Management Pack wizard, name your new management pack the same as the application group so you can easily pair the two, which is helpful later in the monitoring experience. Click Next.
On the What to Monitor page, in the Environment menu, select the environment you want to monitor your application in: None, Production, Staging, Test, Development, or new. Typically, you will want to pair the environment tag with the server group you are monitoring.
If you have no need to monitor multiple versions of the same applications, such as production instances and staging instances, you can leave the environment tag set to None,
On the What to Monitor page, in the Application components section, click Add. On the Object Search page that opens, use the Look for menu and Filter by text box to narrow your search, and then click Search for a list of the application components you can monitor. From the search results, select the application components you want to monitor, click Add, and then click OK. The application components you selected are now displayed as members of the application group you are going to monitor. Click Next.
To limit the scope of monitoring to a group of servers, on the What to Monitor page, in the Monitored Servers section, click Search. On the Group Search page that opens, use the Filter by text box and Management pack menu to find the server group you want to use and click Search. Select the server group you want to limit monitoring to from the Available Groups search results list, and click OK to add it to your target server group to monitor. Click Next.
The Targeted servers group allows you to configure monitoring using one set of thresholds for one set of application servers and a different set of thresholds for another set of application servers. To configure monitoring for the second set of computers, run the template again and use the alternate Targeted servers group.
On the Server-Side Configuration page, decide how you want to configure your monitoring. You have options to:
Turn on or off performance event monitoring
Turn on or off exception event monitoring
Change the Performance Event Threshold
Enable and customize settings for client-side monitoring. Setting up client-side monitoring is covered in the procedure Enable client-side monitoring in this document.
On the Summary page, review your monitoring configuration for your application group. Note and resolve any warnings. For details about a warning, hover over the warning icon.
After server-side monitoring has been configured, you might need to restart IIS or recycle the application pools to finalize the configuration of the applications for monitoring. If a restart or recycle is required, you will receive an alert and can use the task link in the knowledge base to perform the necessary action.
After you restart IIS, an application will not begin to be monitored until it is used.
Enable, configure, and monitor.NET applications (client-side perspective)
Client-side application monitoring allows you to measure details of the customer experience, such as how long it takes for a page to load. It is another way to monitor how your applications are working from the perspective of your customer. Client-side application monitoring helps you determine whether a problem exists on your server, in the application, or elsewhere.
You can only configure client-side monitoring for applications that have been configured for server-side monitoring.
Client-side monitoring can be set up at the same time as server-side monitoring when you run the .NET Application Performance Monitoring wizard or through editing an existing template instance as described below.
To enable and configure .NET application monitoring (client-side perspective)
To enable client-side application monitoring, in the Operations Manager console, in the navigation pane, click the Authoring button, expand Management Pack Templates, click .NET Application Performance Monitoring, right-click the application group you configured for server-side monitoring, and then select Properties.
On the Properties page, click the Enable Client Side Monitoring tab, and click the Enable checkbox next to the application group.
Enable client-side monitoring
Enabling client-side application monitoring creates a web service endpoint that cannot currently be secured using SSL. Client-side monitoring only supports SSL if the website hosting the collector is configured for SSL. The endpoint might receive sensitive data over the HTTP channel. We recommend using client-side monitoring for internal applications only. There is no workaround in the Beta release.
Click the Excluded Pages link, and on the Excluded Pages page, click Add to add the pages that you want to exclude from client-side monitoring. The pages you add to this list are the pages that the Check Client Side Monitoring Compatibility task found incompatible when you ran the task before configuring your application for monitoring.
On the Enable Client Side Monitoring page, in the Monitored Servers section, you can target a group to limit the scope of the monitoring to a group of servers. To choose a targeted group, click Search and use the Group Search page to search for the group by name and management pack and then add them to the selected objects list. The targeted group you choose are the only servers hosting the web application that will instrument the application pages to return browser-side events. This group allows you to limit client-side monitoring independent of server-side monitoring.
Only applications hosted on servers that are members of both the server-side and client-side targeted groups will be instrumented by client-side monitoring.
On the Client Side Configuration tab, choose how you want to monitor performance and exception events, page load threshold, and Ajax and WCF threshold. What you enter into the Configure client IP address filter section determines the client requests that are monitored. By default the filter is set to the localhost so only connections from the local host will be instrumented for monitoring.
To review all of your monitoring configurations—both server-side configurations and client-side configurations—click the Summary tab. If the configuration looks good, click OK.
If you want to change any configurations, this is a good time to do so. For example, to review or change your server-side configuration, click the Server Side Configuration tab to see that configuration. To disable client-side monitoring, click the Enable Client Side Monitoring tab, and clear the Enable checkbox.
After the client-side monitoring has been configured, you will receive an alert to recycle IIS on the affected servers once the client-side monitoring settings have been applied to the server. You can use the link in the knowledge base article to recycle the IIS application pools on the server.
To use views for applications (client-side perspective)
To monitor client-side applications, in the Operations Manager console, in the navigation pane, click the Monitoring button, expand Application Monitoring, expand .NET Monitoring, and then application name (client) folder. The client-side monitoring process is very similar to server-side monitoring, except that you click All Performance Data and Overall Component Health in the application name (client) folder to view alerts pertaining to the client-side monitoring for the application group.
To make sure client-side application monitoring is working, go to the application group state view and the CSM Application Component Monitoring will have application monitoring status filled in.
It might take a few minutes to discover the objects after you set up client-side monitoring.
Viewing and investigating alerts for .NET applications (server- and client-side perspectives)
Now that you have configured .NET applications to be monitored, you can view alerts and begin investigating the issues.
To view and investigate alerts for .NET applications (server- and client-side perspectives)
To view active alerts by application group, in the Operations Manager console, in the navigation pane, click the Monitoring button, expand Application Monitoring, expand .NET Monitoring, expand the folder with the name of the application group you configured for monitoring, and then click Active Alerts.
View alerts by application group
To see why a monitoring aspect is unhealthy, use the application group state view and click the state view cell related to it. The Details View will show you the instance and the state of the Availability, Configuration, Performance, and Security monitors.
To see application performance, in the application component folder, click All Performance Data. This gives you the base information about each component, shown by instance.
To see the overall health dashboard view of the components you selected for the application you are monitoring, in the application component folder, click Overall Component Health. You will see the application state, active alerts, and a detail view.
To begin investigating an alert and view the alert description, double-click an alert. The Alert Properties page will open.
Begin investigating alerts on the Alert Properties page
To view details about an alert in any of these views, click the alert you want to investigate and look in the Alert Details pane for the Knowledge section. You can also look in the Tasks pane in the Tasks section, and then click Alert Properties to see the details of an alert and enter alert status.
To see details, on the Alert Properties page, click the Alert Context tab. Here you can see information, such as the performance metrics.
The Alert Context tab shows key details, including performance metrics.
At the top of the Alert Properties page, on the Alert Context tab, click the link Click here for additional Event details. This opens Application Diagnostics, a new monitoring feature in Operations Manager in a web browser. Click Yes to close the main window once the event information has loaded.
Application Diagnostics Event properties
To see how this event relates to other events in the chain of events, on the Application Diagnostics page, click the Distributed chains tab. This view shows all of the components that are involved in the request.
Application Diagnostics Distributed chains show how events relate to each other.
To pinpoint the root cause of the problem or incident, click the last event in the chain. This is the latest event that raised an exception or broke the performance threshold. The Event Properties tab for that event will open.
On the Event Properties tab, expand the Stack section. The stack is the order in which events happened. The Resource Group View and Execution Tree View allow you to expand nodes to investigate the various calls. This view helps answer which tier the problem is in, or where is it occurring.
Application Diagnostics tree views lets you see exactly what went wrong where and when.
On the Application Diagnostics page, click the Performance counters tab. Performance counters show the system 15 minutes before the event happened. This gives a baseline measure before the event, which allows you to see your system state before the event so that you know if the system was impacting the performance of the application.
Application Diagnostics Performance counters allow you to compare system performance before, during, and after an event.
For additional resources, see Information and Support for System Center 2012.
Tip: Use this query to find online documentation in the TechNet Library for System Center 2012. For instructions and examples, see Search the System Center 2012 Documentation Library.