Web Debug

Fix broken web applications, from servers to clients.

Control all tabs in IE in one process

Add the below DWORD registry value and set to 0
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\TabProcGrowth

Collect IIS high memory dump with DebugDiag

1. Download and then install the DebugDiag from http://www.microsoft.com/download/en/details.aspx?id=26798
2. Run DebugDiag Tool 1.2 and click Add Rule button.
3. Select Memory and Handle Leak and click Next
4. Click on Process Name column to sort by process name. Scroll down to see the w3wp processes.
5. Choose the w3wp process which has memory issue (refer to commandline column for the application pool name if there are multiple w3wp process)
6. On the Configure Leak Rule page, configure parameters as below,

  • Select the Start memory tracking immediately when rule is activated radio button.
  • Click Configure in Userdump Generation
  • Select Auto-create a crash rule to get userdump on unexpected process exit.
  • Select the Generate a userdump when private bytes reach check box, and make sure the default value is 800.
  • Select the each additional check box, and make sure the default is 200.(By selecting the virtual bytes reach option, a memory dump will automatically be created when virtual bytes uses 600 MB. If virtual bytes increases by 200 MB, another memory dump will automatically be created.)


7. Click Save & Close to get back to Configure Leak Rule page
8. Click Auto-unload LeakTrack when rule is completed or deactivated checkbox and click Next.
9. Click next and name your rule and specify the UserDump locations.
10. Click next and Activate the Rule now.

Collect IIS crash dump with DebugDiag

1. Download and then install the DebugDiag from http://www.microsoft.com/download/en/details.aspx?id=26798
2. Run DebugDiag Tool 1.2 and click Add Rule button.
3. Select Crash and click Next.
4. Choose A specific IIS web application pool and click Next.
5. Choose the application pool which is crashing.
6. Click Next in Advanced Configuration (Optional), click on Breakpoints and then click on Add Breakpoint.
7. Choose Ntdll!ZwTerminateProcess from the list and change the Action Type to Full User Dump and Action Limit to 5 and click OK.
8. Click on Save and Close.
9. Click next and name your rule and specify the UserDump locations.
10. Select Activate the rule now.

Collect IIS high CPU dumps with DebugDiag

1. Download and then install the DebugDiag from http://www.microsoft.com/download/en/details.aspx?id=26798
2. Run DebugDiag Tool 1.2 and click Add Rule button.
4. Select Performance rule type and click Next.
5. Select Performance Counters performance rule type and click Next.
6. Click Add Perf Triggers.

  • In Add Counters dialog select Process\%Processor Time, select w3wp instance, then click Add button then click OK button. (If there are multiple w3wp instances, you can add multiple counters for each.)
  • Select the counter just added and click Edit Thresholds button.
  • Take actions when this counter stays: Above
  • This threshold: 80 (adjust this according to your CPU usage)
  • For this number of seconds: 10


7. Click OK and click Next.
8. Select Add Dump Target and choose Web application pool as Target Type。
9. Select the application pool which costs high CPU usage and click OK and Next.
10. Configure UserDump Series

  • Generate a UserDump every 10 seconds
  • Start the timer when writing the dump file completes
  • Stop after generating 3 user dumps.
  • Collect Full UserDumps


11. Click Next and name your rule and specify the UserDump locations.
12. Click Next and Activate the Rule now.

Collect IIS hang dump with DebugDiag

1. Download and Install DebugDiag on web server from http://www.microsoft.com/download/en/details.aspx?id=26798
2. Run Debug Diag Tool 1.2 and go to Processes tab.
3. Right click the w3wp process and click Create Full User Dump (refer to command line column for the hanging application if there are multiple w3wp process listed)
4. A dialog will pop up after the dump is created and shows the dump location.

Fork me on GitHub