TRACE_LOGFILE_HEADER 結構 (evntrace.h)

TRACE_LOGFILE_HEADER結構包含事件追蹤會話及其事件的相關資訊。 它是 ETW 記錄檔標頭中追蹤資訊資料的原始資料格式。 它也是 OpenTrace 所傳回信息的一部分,並在追蹤處理期間提供給 BufferCallback

語法

typedef struct _TRACE_LOGFILE_HEADER {
  ULONG                     BufferSize;
  union {
    ULONG Version;
    struct {
      UCHAR MajorVersion;
      UCHAR MinorVersion;
      UCHAR SubVersion;
      UCHAR SubMinorVersion;
    } VersionDetail;
  } DUMMYUNIONNAME;
  ULONG                     ProviderVersion;
  ULONG                     NumberOfProcessors;
  LARGE_INTEGER             EndTime;
  ULONG                     TimerResolution;
  ULONG                     MaximumFileSize;
  ULONG                     LogFileMode;
  ULONG                     BuffersWritten;
  union {
    GUID LogInstanceGuid;
    struct {
      ULONG StartBuffers;
      ULONG PointerSize;
      ULONG EventsLost;
      ULONG CpuSpeedInMHz;
    } DUMMYSTRUCTNAME;
  } DUMMYUNIONNAME2;
#if ...
  PWCHAR                    LoggerName;
#if ...
  PWCHAR                    LogFileName;
#if ...
  RTL_TIME_ZONE_INFORMATION TimeZone;
#else
  LPWSTR                    LoggerName;
#endif
#else
  LPWSTR                    LogFileName;
#endif
#else
  TIME_ZONE_INFORMATION     TimeZone;
#endif
  LARGE_INTEGER             BootTime;
  LARGE_INTEGER             PerfFreq;
  LARGE_INTEGER             StartTime;
  ULONG                     ReservedFlags;
  ULONG                     BuffersLost;
} TRACE_LOGFILE_HEADER, *PTRACE_LOGFILE_HEADER;

成員

BufferSize

事件追蹤會話緩衝區的大小,以位元組為單位。

DUMMYUNIONNAME

DUMMYUNIONNAME.Version

收集追蹤的作業系統版本號碼。 這是 VersionDetail成員的匯總。 從低序位元組開始,前兩個位元組包含 MajorVersion、下兩個位元組包含 MinorVersion、下一個兩個位元組包含 SubVersion,最後兩個位元組包含 SubMinorVersion

DUMMYUNIONNAME.VersionDetail

DUMMYUNIONNAME.VersionDetail.MajorVersion

收集追蹤之作業系統的主要版本號碼。

DUMMYUNIONNAME.VersionDetail.MinorVersion

收集追蹤的作業系統次要版本號碼。

DUMMYUNIONNAME.VersionDetail.SubVersion

保留的。

DUMMYUNIONNAME.VersionDetail.SubMinorVersion

保留的。

ProviderVersion

收集追蹤的作業系統組建編號。

NumberOfProcessors

收集追蹤之系統上的處理器數目。

EndTime

事件追蹤會話停止的時間,自 1601 年 1 月 1 日午夜起,以 100 奈秒的間隔為單位。 如果您要即時取用事件,或從未完成的記錄檔 (,也就是未正確關閉) ,此值可能是 0。

TimerResolution

硬體計時器解析度,單位為 100 奈秒。 如需使用方式,請參閱 EVENT_TRACE_HEADER的。

MaximumFileSize

記錄檔的大小上限,以 MB 為單位。

LogFileMode

事件追蹤會話的記錄模式。 如需值清單,請參閱 記錄模式常數

BuffersWritten

事件追蹤會話所寫入的緩衝區總數。

DUMMYUNIONNAME2

DUMMYUNIONNAME2.LogInstanceGuid

保留的。

DUMMYUNIONNAME2.DUMMYSTRUCTNAME

DUMMYUNIONNAME2.DUMMYSTRUCTNAME.StartBuffers

保留的。

DUMMYUNIONNAME2.DUMMYSTRUCTNAME.PointerSize

指標資料類型的預設大小,以位元組為單位。

DUMMYUNIONNAME2.DUMMYSTRUCTNAME.EventsLost

事件追蹤會話期間遺失的事件數目。 事件主要是因為配置給追蹤記錄會話的記憶體不足,或傳入事件率非常高而遺失。

DUMMYUNIONNAME2.DUMMYSTRUCTNAME.CpuSpeedInMHz

收集追蹤的系統 CPU 速度,以 MB 為單位。

Windows 2000: 不支援這個成員。

LoggerName

請勿使用此欄位。

事件追蹤會話的名稱是記憶體中這個結構後面的第一個以 Null 結尾的字串。

LogFileName

請勿使用此欄位。

事件追蹤記錄檔的名稱是記憶體中這個結構後面的第二個以 Null 結尾的字串。 第一個字串是會話的名稱。

TimeZone

包含BootTime、EndTimeStartTime成員時區的TIME_ZONE_INFORMATION結構。

BootTime

系統啟動的時間,從 1601 年 1 月 1 日午夜起的 100 奈秒間隔。 只有寫入全域記錄器會話的追蹤才支援BootTime

PerfFreq

如果存在,則為高解析度效能計數器的頻率。

StartTime

事件追蹤會話啟動的時間,從 1601 年 1 月 1 日午夜起,以 100 奈秒的間隔為單位。

ReservedFlags

指定時鐘類型。 如需詳細資訊,請參閱WNODE_HEADERClientCoNtext成員。

BuffersLost

事件追蹤會話期間遺失的緩衝區總數。

備註

設定任何成員之前,請務必將此結構的記憶體初始化為零。

來自任何記錄檔的第一個事件包含此結構中所定義的資料。 您可以使用這個結構來存取事件資料,也可以使用 EventTrace_Header MOF 類別來解碼事件資料。 如果使用這個結構來讀取事件資料,如果取用者位於與產生記錄檔的電腦不同電腦,或記錄檔是在 64 位電腦上寫入 WOW (32 位) 會話,可能會傳回非預期的結果。 這是因為 LoggerNameLogFileName 成員是指標,而且大小可能會根據 PointerSize 成員而有所不同。

需求

   
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
標頭 evntrace.h

另請參閱

EVENT_TRACE_LOGFILE

LARGE_INTEGER

TIME_ZONE_INFORMATION