Question

There are truckloads of counters available in perfmon for ASP.NET. What are the best (I am thinking of choosing 5-10) that will be the best to monitor in our test environment so that we can feed back to developers.

I am thinking of things like request time, request queue length, active sessions etc.

Was it helpful?

Solution

For a normal (not performance/stress testing) you would be OK with the following:

  • Request Bytes Out Total (very important especially for web (not intranet) applications)
  • Requests Failed
  • Requests/Sec
  • Errors During Execution
  • Errors Unhandled During Execution
  • Session SQL Server Connections Total
  • State Server Sessions Active

For the performance testing you would probably want things like:

  • % CPU Utilization (make sure you're checking for very low CPU utilisation as well as it might indicate that something is dead)
  • Requests Queued
  • Output Cache Hits

OTHER TIPS

The ones I use the most are the memory counters. All of them. I know that they aren't specific to ASP.NET, but the only problems I've ever had with a web app were memory issues.

Excessive heap, gen 2 collections and % time in GC are the most important ones. If your time in GC is spiraling out of control it's a sign that your UI and viewstate are too big. A large heap and lots of gen 2 collections says you're keeping too much stuff in memory (inproc session state, for example).

Regular ASP.NET apps based on web controls require lots of objects being created and then destroyed quickly, as a page is reconstructed and then disposed. High gen0 collections isn't bad. Its when you start seeing lots of objects make it into gen1 and then gen2 that suggests you're either leaking memory or are holding onto too much state.

Be aware of memory counters when running more than one ASP.NET Application Pool check out the problem at http://blog.dynatrace.com/2009/02/27/can-you-trust-your-net-heap-performance-counters/

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top