Troubleshooting IIS with a Debugger

Applies To: Windows Server 2003, Windows Server 2003 with SP1

Advanced troubleshooting activities will sometimes require a debugging tool. A debugging tool allows you to peer inside an executing Win32 process to observe what is happening. You can use the debugging tool to capture a record of the memory space of the process that is hosting the faulty application. In IIS 6.0, the process is usually W3WP.EXE. This memory dump is written to a DMP file.

The Microsoft Debugging Tools for Windows include a script file, named Adplus.vbs, which is a scripted front-end to the Microsoft Console Debugger (CDB). Adplus.vbs makes capturing dump files easy.

The key to using any debugger is to understand the kind of problem that you are troubleshooting. Once you identify the kind problem you are troubleshooting, you can decide what to do with the debugger and what kind of dump file to obtain. After you have obtained a dump file, it is recommended that you then have it debugged by a developer or a Microsoft support professional.

The IIS Resource Kit Tools contain a tool called IISState. This tool is like a debugger and can also be used to look at a running process. IISState contains some heuristic functionality that attempts to figure out what is happening in the process for you. For more information, see the readme.txt that comes with IISState.

For detailed information about troubleshooting with Adplus.vbs, see Microsoft Knowledge Base article 286350, How To: Use ADPlus to Troubleshoot "Hangs" and "Crashes".