The Debug Diagnostic Tool (DebugDiag) is designed to assist in troubleshooting issues such as hangs, slow performance, memory leaks or fragmentation, and crashes in any user-mode process. The tool includes additional debugging scripts focused on Internet Information Services (IIS) applications, web data access components, COM+ and related Microsoft technologies.
Note: There are multiple files available for this download. Once you click on the “Download” button, you will be prompted to select the files you need.
The Debug Diagnostic Tool (DebugDiag) is designed to assist in troubleshooting issues such as hangs, slow performance, memory leaks or memory fragmentation, and crashes in any user-mode process. The tool includes additional debugging scripts focused on Internet Information Services (IIS) applications, web data access components, COM+ and COM+ related Microsoft technologies, Sharepoint, and .NET framework.
DebugDiag provides an extensible object model in the form of COM objects and provides a script host with a built-in reporting framework.
- DebugDiag 1.0 was released as part of the IIS Diagnostic Toolkit and as a standalone tool (x86 only).
- DebugDiag 1.1 was released as a standalone tool only (x86 and limited x64 support).
- DebugDiag 1.2 is currently available as a standalone tool only (x86 and full x64 support).
It is composed of the following 3 components: a debugging service, a debugger host, and the user interface.
The Debugging Service
The debugger service (DbgSvc.exe) performs the following tasks:
The Debugger Host
The Debugger Host (DbgHost.exe) hosts the Windows Symbolic Debugger Engine (dbgeng.dll) to attach to processes and generate memory dumps. It also hosts the main analyzer module to analyze memory dumps. Dbghost.exe has no dependency on the service “DbgSvc.exe” and can be used separately.
The User Interface
The user interfaces (DebugDiag.exe and DebugDiagAnalysisOnly.exe) present an interface to analyze memory dumps, automate the creation of control scripts and to show the status of running processes, including services.
It is composed of 3 views:
- Attach/Detach the host to processes
- Collect performance monitor data
- Implement HTTP ping to detect hangs
- Inject leak monitor into running processes
- Collect debugging session state information
- Shows the state of each rule defined
Note: DebugDiagAnalysisOnly.exe does not require privilege elevation on operating systems beginning with Windows Vista, so it only contains the Advanced Analysis view.
- Rules: Creates control script for the debugger host through a wizard. The script is located under the directory \scripts.
- Advanced Analysis: Runs a selected “Analysis Script” against one or more memory dumps.
- Processes: Shows status of running processes/services.
Supported Operating System
• Windows 2003-Windows XP
• Windows 2008-Windows Vista
• Windows 2008 R2- Windows7
Please visit Microsoft KB 2580960 for detailed instruction on how to use Debugdiag 1.2.
Debugdiag 1.2 introduced many new features that proved to be of great value:
- .Net 2.0 and higher analysis integrated to the Crash Hang analysis.
- SharePoint Analysis Script.
- Performance Analysis Script.
- .NET memory analysis script (beta).
- Native heap analysis for all supported operating systems
- Generate series of Userdumps.
- Performance Rule.
- IIS ETW hang detection.
- .NET CLR 4.0 support.
- Managed Breakpoint Support.
- Report Userdump generation to the Event log.
- Import/Export of rules and configuration, including 'Direct Push' to remote servers.
- Enterprise deployment support using XCopy and Register.bat.
Please direct any questions, comments or feedback to email@example.com