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 のメンバーのロールアップです。 下位バイト以降、最初の 2 バイトには MajorVersion が含まれており、次の 2 バイトには MinorVersion が含まれており、次の 2 バイトには SubVersion が含まれており、最後の 2 バイトには SubMinorVersion が含まれます。

DUMMYUNIONNAME.VersionDetail

DUMMYUNIONNAME.VersionDetail.MajorVersion

トレースが収集されたオペレーティング システムのメジャー バージョン番号。

DUMMYUNIONNAME.VersionDetail.MinorVersion

トレースが収集されたオペレーティング システムのマイナー バージョン番号。

DUMMYUNIONNAME.VersionDetail.SubVersion

予約済み。

DUMMYUNIONNAME.VersionDetail.SubMinorVersion

予約済み。

ProviderVersion

トレースが収集されたオペレーティング システムのビルド番号。

NumberOfProcessors

トレースが収集されたシステム上のプロセッサの数。

EndTime

イベント トレース セッションが停止した時刻 (1601 年 1 月 1 日午前 0 時から 100 ナノ秒間隔)。 この値は、イベントをリアルタイムで使用している場合、または最終処理されなかった (つまり、適切に閉じられなかった) ログ ファイルから使用する場合、0 になることがあります。

TimerResolution

ハードウェア タイマーの解像度 (100 ナノ秒単位)。 使用方法については、「 EVENT_TRACE_HEADERの備考」を参照してください。

MaximumFileSize

ログ ファイルの最大サイズ (メガバイト単位)。

LogFileMode

イベント トレース セッションのログ モード。 値の一覧については、「 ログ モード定数」を参照してください。

BuffersWritten

イベント トレース セッションによって書き込まれたバッファーの合計数。

DUMMYUNIONNAME2

DUMMYUNIONNAME2.LogInstanceGuid

予約済み。

DUMMYUNIONNAME2.DUMMYSTRUCTNAME

DUMMYUNIONNAME2.DUMMYSTRUCTNAME.StartBuffers

予約済み。

DUMMYUNIONNAME2.DUMMYSTRUCTNAME.PointerSize

ポインター データ型の既定のサイズ (バイト単位)。

DUMMYUNIONNAME2.DUMMYSTRUCTNAME.EventsLost

イベント トレース セッション中に失われたイベントの数。 イベントは主に、トレース ログ セッションに割り当てられたメモリが不足しているか、受信イベントのレートが非常に高いために失われます。

DUMMYUNIONNAME2.DUMMYSTRUCTNAME.CpuSpeedInMHz

トレースが収集されたシステムの CPU 速度 (メガヘルツ)。

Windows 2000: このメンバーはサポートされていません。

LoggerName

このフィールドは使用しないでください。

イベント トレース セッションの名前は、メモリ内のこの構造体に続く最初の null で終わる文字列です。

LogFileName

このフィールドは使用しないでください。

イベント トレース ログ ファイルの名前は、メモリ内のこの構造体に続く 2 番目の null で終わる文字列です。 最初の文字列はセッションの名前です。

TimeZone

BootTimeEndTimeおよび StartTime メンバーのタイム ゾーンを含むTIME_ZONE_INFORMATION構造体。

BootTime

1601 年 1 月 1 日午前 0 時から 100 ナノ秒間隔でシステムが開始された時刻。 BootTime は、グローバル ロガー セッションに書き込まれたトレースに対してのみサポートされます。

PerfFreq

高解像度パフォーマンス カウンターの頻度 (存在する場合)。

StartTime

イベント トレース セッションが開始された時刻 (1601 年 1 月 1 日午前 0 時から 100 ナノ秒間隔)。

ReservedFlags

クロックの種類を指定します。 詳細については、WNODE_HEADERの ClientContext メンバーに 関するページを参照してください。

BuffersLost

イベント トレース セッション中に失われたバッファーの合計数。

解説

メンバーを設定する前に、この構造体のメモリを必ず 0 に初期化してください。

任意のログ ファイルの最初のイベントには、この構造で定義されているデータが含まれています。 この構造を使用してイベント データにアクセスすることも、 EventTrace_Header MOF クラスを使用してイベント データをデコードすることもできます。 この構造を使用してイベント データを読み取ると、コンシューマーがログ ファイルを生成したコンピューターとは異なるコンピューター上にある場合、またはログ ファイルが 64 ビット コンピューター上の WOW (32 ビット) セッションで書き込まれた場合に、予期しない結果が返される可能性があります。 これは、 LoggerName メンバーと LogFileName メンバーがポインターであり、 PointerSize メンバーによってサイズが異なる可能性があるためです。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
Header evntrace.h

関連項目

EVENT_TRACE_LOGFILE

LARGE_INTEGER

TIME_ZONE_INFORMATION