系统信息的自定义注入

内核跟踪控制在多个跟踪文件合并到单个输出跟踪文件时允许系统信息的自定义注入。 若要包括系统信息,请在 CreateMergedTraceFile 函数中设置单个标记或标记组合。 以下标记定义了要添加到合并的跟踪文件的系统信息:

#define EVENT_TRACE_MERGE_EXTENDED_DATA_NONE 0x00000000
不应将任何系统信息添加到合并的跟踪文件中。

#define EVENT_TRACE_MERGE_EXTENDED_DATA_IMAGEID 0x00000001
注入符号查找期间使用的映像信息,如校验和和时间戳。

#define EVENT_TRACE_MERGE_EXTENDED_DATA_BUILDINFO 0x00000002
注入操作系统版本信息,如产品名称和版本实验室。

#define EVENT_TRACE_MERGE_EXTENDED_DATA_VOLUME_MAPPING 0x00000004
注入 MS-DOS 和 Windows NT 路径之间的卷映射。 事件的负载包含两个以 NULL 结尾的 Unicode 字符串。 第一个字符串包含 Windows NT 路径,第二个字符串包含 MS-DOS 路径。 负载的长度是包含 NULL 字符的两个字符串的大小(以字节为单位)。

例如,Windows NT 路径“\Device\HarddiskVolume1\”将转换为 MS-DOS 路径“C:\”。

#define EVENT_TRACE_MERGE_EXTENDED_DATA_WINSAT 0x00000008
注入 WinSat 信息。

#define EVENT_TRACE_MERGE_EXTENDED_DATA_EVENT_METADATA 0x00000010
注入在分析事件的计算机以外的计算机上捕获的事件的跟踪数据标头 (TDH) 元数据。 有关跟踪数据标头信息的详细信息,请参阅事件跟踪

#define EVENT_METADATA_LOG_TYPE_TRACE_EVENT_INFO 0x20
注入用于标识通过 EVENT_TRACE_MERGE_EXTENDED_DATA_EVENT_METADATA 记录的事件的跟踪信息。

#define EVENT_METADATA_LOG_TYPE_EVENT_MAP_INFO 0x21
注入为作为设置 EVENT_TRACE_MERGE_EXTENDED_DATA_EVENT_METADATA 标记的结果记录的事件定义元数据的信息。 有关详细信息,请参阅 EVENT_MAP_INFO 结构

#define EVENT_TRACE_MERGE_EXTENDED_DATA_PERFTRACK_METADATA 0x00000020
注入在不同计算机上解码 PerfTrack 事件的 PerfTrack 事件元数据。 仅在 Windows 7 和 Windows Server 2008 上注入这些事件。

#define EVENT_TRACE_MERGE_EXTENDED_DATA_DEFAULT 0x000FFFFF
注入映像、版本、卷映射、WinSat、事件元数据和 PerfTrack 元数据的数据。

#define EVENT_TRACE_MERGE_EXTENDED_DATA_ALL 0xFFFFFFF
将所有扩展数据信息注入到输出跟踪文件中。

#define EVENT_TRACE_MERGE_EXTENDED_DATA_NETWORK_INTERFACE 0x00000040
注入网络接口信息。

#define EVENT_TRACE_MERGE_EXTENDED_DATA_NGEN_PDB 0x00000080
创建 PDB 以便为跟踪中显示的 NGEN 二进制文件启用符号加载。

#define EVENT_TRACE_MERGE_EXTENDED_DATA_COMPRESS_TRACE 0x10000000
压缩合并的跟踪。 仅在 Windows 8 和更高版本上受支持。

#define EVENT_TRACE_MERGE_EXTENDED_DATA_INJECT_ONLY 0x40000000
仅注入映像标识信息,不会从输入跟踪复制事件。

注解

要求:

版本:从 Windows Vista 开始提供。 此结构随 Windows Performance Analyzer 一起分发。

标头:在 KernelTraceControl.h 中声明。 包括 KernelTraceControl.h。

库:在 KernelTraceControl.dll 中声明。

内核跟踪控制 API 参考

CreateMergedTraceFile