Introducing Microsoft Monitoring Agent

We are very pleased to announce the RTM version of the brand new Microsoft Monitoring Agent. This new tool incorporates the capabilities introduced with Visual Studio 2012’s IntelliTrace Standalone Collector and adds a ton of new features and capabilities.

You can now download the Microsoft Monitoring Agent and install on any server in your enterprise that meet the minimum installation requirements.

The Microsoft Monitoring Agent is a simple installation that is included with System Center Operations Manager 2012 R2 or can be installed separately to be used in a standalone manner. When using the Microsoft Monitoring Agent as a standalone tool the data captured is available as a Visual Studio IntelliTrace file. These files can be opened with Visual Studio Ultimate 2013 Release Candidate.

The rest of this post will focus on using the Microsoft Monitoring Agent in a standalone mode.

Using MMA in standalone mode

After installing the Microsoft Monitoring Agent you enable monitoring of your IIS hosted application using PowerShell commands. Let’s say that I have installed my application (FabrikamFiber) under the default application node on my IIS server as shown below.

To start monitoring this application I use the following PowerShell command running as Administrator:

A couple of things to notice:

  • The name of the application that I am monitoring includes the site name (Default Web Site) as well as the application name (FabrikamFiber.Web).
  • I chose the monitor mode. My options are to use monitor, trace, or custom. I will focus on the monitor mode in this blog post.
  • The output path is a file location that I have already created. You may wish to make this location shared so that both developers and operations team members can access the files that get created in that location.

Monitoring mode has been designed to have minimal impact on the running application and only records data when the Microsoft Monitoring Agent detects undesirable behavior such as problematic exceptions occur or performance is poor. The default settings record exceptions that bubble up to the global exception handler and pages that  take longer than 5 seconds to respond from the server. In addition to the conditions that trigger data collection the Microsoft Monitoring Agent will also limit the frequency in which it will record data to a maximum of 60 similar events per day.

There are a couple of approaches that you can take to use the Microsoft Monitoring Agent in monitoring mode effectively. One method is to gather an IntelliTrace file after a problem has been reported. A more proactive approach is to gather an IntelliTrace file on a regular schedule, such as daily, to check for problematic behavior in your application that may not have been reported by your users.

Generating and Using the IntelliTrace file

To produce an IntelliTrace file you use the Checkpoint-WebApplicationMonitoring command as shown below:

The IntelliTrace file can then be opened using Visual Studio 2013 Release Candidate. Any performance violations are listed in the Performance Data section of the IntelliTrace Summary page and exceptions are shown in the Exceptions section.

Diagnosing exceptions remains very similar to the experience available with Visual Studio 2012. Diagnosing performance events is detailed in a separate blog post.

For detailed information on the Microsoft Monitoring Agent refer to TechNet.

For expanded scenarios and usage information refer to MSDN.

We are always looking for feedback and comments for our features. Please visit the MSDN Diagnostics forums.