There are many options to troubleshoot performance issues in .NET Web Application. We can use ETW, performance logs, IIS logs, application logs, dumps and profiler. Today I am going to show how to use NP .NET Profiler to troubleshoot performance issues. You can download the tool from here
.NET CLR runtime provides notification about a variety of events that occur within the .NET application. With the help of these events a .NET Profiler can analyze the performance of .NET application. These events are notified to the profiler via ICorProfilerCallback interface. This interface consist of methods such as FunctionEnter, FunctionLeave, ObjectAllocated, ExceptionThrown,etc. With the help of these events profilers can calculate which functions took long time to execution time, number of exceptions it raised, amount of memory it allocated etc. Click here for more details on profiling API
NP .NET Profiler implements this ICorProfilerCallback profiling interface to profile .NET applications. NP .NET Profiler supports all versions of .NET Runtime on all Windows Operating Systems. It also supports virtual machines.
NP .NET Profiler is designed to assist in troubleshooting performance, memory and first chance exception issues in the following applications:
NP .NET Profiler UI is wizard based. Just follow the wizard...
.NET Profiler generated huge number of reports. Here are the reports from a sample MVC Web Application. The problem statement for this test application is: one of the request is taking more than 10 seconds to execute.