Technical Document #13

Technical Document #13
What is the wddebug Debug Monitor utility and how can I use it?

WinDriver's Debug Monitor is an application program that logs detailed debugging information from the WinDriver kernel. wddebug (found in the WinDriver/util directory) is a console-mode version of this utility, for Windows, Windows CE (a.k.a. Windows Embedded Compact), and Linux, (and in earlier WinDriver versions — for Mac OS X, Solaris, and VxWorks as well). wddebug also supports GUI execution on Windows CE.
The Debug Monitor has an additional version — wddebug_gui — which is a fully GUI version for Windows and Linux (and in earlier WinDriver versions — for Mac OS X as well). For a description of wddebug_gui refer to Technical Document #12.
A detailed description of both versions of the Debug Monitor utility can be found in the WinDriver User's Manuals.

This document describes the wddebug console-mode usage and Windows CE GUI usage for the latest WinDriver versions.
Note: The Windows CE GUI usage is supported only beginning with version 10.0.1 of WinDriver.

wddebug console-mode usage

wddebug [<driver_name>] [<command>] [<level>] \
    [<sections>]
  • <driver_name>: The name of the driver to which to apply the command. The driver name should be indicated without the driver file's extension; it can be either the default driver name — windrvr6 / WinDriver / windrvr, depending on the OS and the WinDriver version — or the name of your renamed WinDriver driver module; (for information regarding how to rename the driver, refer to the WinDriver User's Manuals.

  • <command>: The Debug Monitor command to execute:
    • Activation commands:
      • on: Turn the Debug Monitor on.
      • off: Turn the Debug Monitor off.
      • dbg_on: Redirect the debug messages from the Debug Monitor to a kernel debugger and turn the Debug Monitor on (if it was not already turned on) — see Technical Document #44 for more details.
      • dbg_off: Stop redirecting debug messages from the Debug Monitor to a kernel debugger.
      NOTE
      The on and dbg_on commands can be used together with the <level> and <sections> options, described below.

    • dump: Continuously display ("dump") debug information, until the user selects to stop.

    • status: Display information regarding the running <driver_name>, the current Debug Monitor status — including the active debug level and sections (when the Debug Monitor is on) — and the size of the debug messages buffer.

    • help: Display usage instructions.

    • None: wddebug can be run with no arguments, including no command. On platforms other than Windows CE, this is equivalent to running wddebug help; on Windows CE, it activates the utility's Windows CE GUI version.

The following options are applicable only to the on and dbg_on activation commands:

  • <level>: The debug trace level to set; can be any of the following:
    ERROR, WARN, INFO, TRACE
    The default trace level is TRACE.

  • <sections>: The debug sections to set; these sections determine what part of the WinDriver API you wish to monitor. For a full list of all supported debug sections, run wddebug help to view the usage instructions. The default debug sections flag is ALL, which sets all the supported debug sections.

Usage Examples

  • wddebug on TRACE ALL
    Turn the Debug Monitor on with the highest trace level for all sections.
    Note: The ALL can be omitted from the command above, since this is the default debug section.
  • wddebug dump
    Dump debug messages continuously, until the user selects to stop.
  • wddebug off
    Turn the Debug Monitor off.
  • wddebug help
    Display the wddebug usage instructions. This is equivalent to running wddebug with no arguments, on all platforms except Windows CE.

wddebug Windows CE GUI usage

On Windows CE, you can log debug messages to a specific log file by running wddebug without any arguments. This method is designed to enable debug logging on Windows CE platforms that do not have a command-line prompt. On such platforms, you can activate debug logging by double-clicking the wddebug executable; this is equivalent to running the application with no arguments from a command-line prompt.

When executing wddebug without arguments, the user is informed, via a GUI message box, that log messages will be stored in a predetermined log file — wdlog.txt in the root Windows CE directory. If the user selects to continue, debug logging is turned on with trace level TRACE and debug sections ALL, and the Debug Monitor begins dumping debug messages to the wdlog.txt log file. The user can stop the logging and turn off debug logging, at any time, via a dedicated GUI message box.