Wednesday 21 December 2011

Debug Diagnostic Tool

 

The Debug Diagnostic Tool (DebugDiag) is intended to help in troubleshooting issues such as hangs, memory leaks or memory fragmentation ,slow performance, crashes etc in any process. The tool contained extra debugging scripts focused on IIS applications, Sharepoint, and .NET framework.

You can download DebugDiag from following location.

http://www.microsoft.com/download/en/details.aspx?id=26798

 

I have updated steps on the DebugDiag 1.2. In this example, I have put one exception in Commerce Server side. This exception fire after 10 minutes of continuous execution. 

  1. Start the DebugDiag.exe from C:\Program Files\DebugDiag
  2. In the Add Rule dialog box, select Performance option and click Next
    image
  3. Select HTTP Responses Times option, click Next:
    image
  4. Click Add URL, select the "Generate regular 'ping' requests" option, fill a typical link of AOS_PRD web site, I use "localhost:8080/test.aspx" as one sample here:
    image
    Select 120 as the Ping every and Timeout after fields. Click OK.
  5. After test the URL by following the wizard, Click Next:
    image
  6. Click the Add Dump Target:
    image
  7. Select the Web Application pool for your application, such as Commerce Server site you stress tested:
    image
  8. Configure the UI as below, click Next:
    image
  9. Click Next and finish the Wizard. The Rules tab will be like this:
    image

After above steps, if the application (Which is in DefaultAppPool, which we have selected) cannot give response in 2 minutes, then Memory dump will be created automatically.

Above is simple way to take the memory dump.

So after running the load test, when system does not respond we need to do following options to collect log,

a) Open DebugDiag tool.

b) Go to processes tab select “w3wp.exe” process name and right click & do “Create Full user Dump”.

Make sure that your drive has enough space to store dump.

Once you have your memory dump then using WinDBG, load the dump file and load up SOS and start finding the issues.

You can get perfect information about how to find the bottle neck using memory dump from the following articles.

http://blogs.msdn.com/b/tess/archive/2008/03/17/net-debugging-demos-lab-6-memory-leak.aspx

http://blogs.msdn.com/b/tess/archive/2008/03/25/net-debugging-demos-lab-7-memory-leak.aspx

 

Hope this will help you to find out exact problem for the hung, memory leak and slow performance.

No comments:

Post a Comment