软件跟踪工具调查
Windows 驱动程序工具包 (WDK) 或 Windows 操作系统中包含以下软件跟踪工具。
在跟踪生成者中启用 WPP 跟踪
TraceWPP (TraceWPP.exe) 是一种命令行工具,可在 跟踪提供程序的源文件(如内核模式驱动程序或用户模式应用程序)的源文件上运行 Windows 软件跟踪预处理器 (WPP) 。
使用 WDK 和 Visual Studio 生成驱动程序或应用程序时,TraceWPP 提供了设置 WPP 选项的替代方法。 此工具处理源文件中的跟踪宏,并创建头文件以启用 WPP 跟踪。
TraceWPP 的命令行选项与将 TraceWPP 任务 传递给 MSBuild 时使用的命令行选项相同。 有关这些选项的详细信息,请参阅 WPP 预处理器。
TraceWPP 位于 WDK 的 bin\<Platform> 目录中。
) 控制跟踪控制器 (跟踪会话
TraceView (TraceView.exe) 是基于 GUI 的 跟踪控制器 和 跟踪使用者,专为实时显示跟踪消息而设计。 它启用、配置、启动、更新和停止 跟踪会话。 此工具还会格式化、筛选和显示实时跟踪会话和跟踪 日志中的跟踪消息。
TraceView 合并并扩展 了 Tracepdb、 Tracelog 和 Tracefmt 的功能。 有关信息,请启动 TraceView,然后从“ 帮助 ”菜单中选择“ 帮助主题”。
TraceView 位于 WDK 的 tools\<Platform> 子目录中,其中 <Platform> 为 x86 或 x64。
Tracelog (Tracelog.exe) 是一种命令行 跟踪控制器 ,用于启用、配置、启动、更新和停止实时和记录会话。 Tracelog 支持用户模式和内核模式跟踪会话,以及 NT 内核记录器跟踪会话 和 全局记录器 (启动) 跟踪会话。 此工具还支持跟踪以测量延迟过程调用 (DPC 所花费的时间,) 和中断服务例程 (ISR) 。
Tracelog 位于 WDK 的 tools\<Platform> 子目录中,其中 <Platform> 为 x86 或 x64。
Logman (Logman.exe) 是一个功能齐全的基于 GUI 的 跟踪控制器 ,专用于控制性能计数器和事件跟踪的日志记录。
Logman 包含在 Windows XP 和更高版本的 Windows 中。 有关如何使用此工具的详细信息,请参阅 Logman。
创建 TMF 文件
Tracepdb (Tracepdb.exe) 是一种命令行支持工具,可从 PDB 符号文件中的跟踪消息格式设置说明 (TMF) 文件创建跟踪消息格式。
显示跟踪消息的工具 Tracefmt (Tracefmt.exe) 和 TraceView (TraceView.exe) 可以使用 TMF 文件中的格式设置说明来设置和显示跟踪消息的格式。
Tracefmt 还可以从 PDB 符号文件创建 TMF 文件。
Tracepdb 和 Tracefmt 位于 WDK 的 tools\tracing\<Platform> 子目录中,其中 <Platform> 为 x86 或 x64。
设置跟踪消息的格式并显示 (跟踪使用者)
Tracefmt 是一个命令行跟踪使用者,它从实时跟踪会话或跟踪日志 (TraceMessage) 设置跟踪消息的格式,并将其写入文件或在命令提示符窗口中显示它们。
Tracerpt (Tracerpt.exe) 是一个命令行跟踪使用者,它 (TraceEvent) 和性能计数器设置跟踪事件的格式,并将其写入 CSV 或 XML 文件。 它还分析事件并生成摘要报告。
Tracerpt 包含在 Windows XP 和更高版本的 Windows 中。 有关如何使用此工具的详细信息,请参阅 Tracerpt。
TraceView 是一个 GUI 工具,它是跟踪控制器和跟踪使用者,还 (TraceMessage) 从实时跟踪会话或跟踪日志中设置跟踪消息的格式并显示。 它以表格形式显示跟踪消息,使其更易于筛选和浏览。
在调试器中查看跟踪事件
Windows 调试工具包括 !wmitrace,这是一种专用调试器扩展,在将跟踪消息写入日志文件或传送以供显示之前,可在跟踪会话缓冲区中显示跟踪消息。
Tracelog 和 TraceView 可以将跟踪消息重定向到 KD 或 Windbg,以附加者为准。 有关详细信息,请参阅 Tracelog -kd 参数和 TraceView Windbg 选项。
分析 DPC 和 ISR 执行时间
- 在具有 Service Pack 2 (SP2) 及更高版本的 Windows XP 上,可以使用 Tracelog 记录 (DPC) 和中断服务例程 (NT 内核记录器跟踪会话中的 ISR) 事件,然后使用 Tracerpt 从日志创建摘要报告。 有关如何使用此工具的详细信息(包括示例),请参阅 Tracelog。