ENABLE_TRACE_PARAMETERS 構造体 (evntrace.h)
ENABLE_TRACE_PARAMETERS構造体には、EnableTraceEx2 を介してプロバイダーを有効にするために使用される情報が含まれています。
構文
typedef struct _ENABLE_TRACE_PARAMETERS {
ULONG Version;
ULONG EnableProperty;
ULONG ControlFlags;
GUID SourceId;
PEVENT_FILTER_DESCRIPTOR EnableFilterDesc;
ULONG FilterDescCount;
} ENABLE_TRACE_PARAMETERS, *PENABLE_TRACE_PARAMETERS;
メンバー
Version
ENABLE_TRACE_PARAMETERS_VERSION_2 (2) に設定します。
EnableProperty
イベントの作成時に ETW に含めることができるオプションの設定。 一部の設定では、各イベントの 拡張データ項目 セクションに追加のデータが書き込まれます。 その他の設定では、トレースに含めるイベントを制御します。 これらの省略可能な設定を使用するには、次のフラグの 1 つ以上を指定します。 それ以外の場合は、0 に設定します。
EVENT_ENABLE_PROPERTY_IGNORE_KEYWORD_0
イベントのキーワード (keyword)
0
が であるイベントを除外します。Windows 10 バージョン 1507 以降でサポートされます。 これは、Windows 8.1および Windows 7 sp1 でもパッチを介してサポートされます。
EVENT_ENABLE_PROPERTY_PROVIDER_GROUP
EnableTraceEx2 のこの呼び出しで、個々のイベント プロバイダーではなくプロバイダー グループを有効にする必要があることを示します。
Windows 10 バージョン 1507 以降でサポートされます。 これは、Windows 8.1および Windows 7 sp1 でもパッチを介してサポートされます。
EVENT_ENABLE_PROPERTY_PROCESS_START_KEY
拡張データにプロセス開始キーを含めます。
プロセス開始キーは、プロセスを識別するシーケンス番号です。 プロセス ID はセッション内で再利用できますが、プロセス開始キーは現在のブート セッションで一意であることが保証されます。
Windows 10 バージョン 1507 以降でサポートされます。 これは、Windows 8.1および Windows 7 sp1 でもパッチを介してサポートされます。
EVENT_ENABLE_PROPERTY_EVENT_KEY
拡張データにイベント キーを含めます。
イベント キーは、イベント インスタンスの一意識別子であり、このイベントをリッスンしている複数のトレース セッションで定数が設定されます。 同時トレース セッションを関連付けるために使用できます。
Windows 10 バージョン 1507 以降でサポートされます。
EVENT_ENABLE_PROPERTY_EXCLUDE_INPRIVATE
InPrivate イベントとしてマークされているか、InPrivate としてマークされているプロセスから取得されたすべてのイベントをフィルター処理します。
InPrivate は、イベントまたはプロセスに、プライベートまたは個人用と見なされるデータが含まれていることを意味します。 これを機能させるには、プロセスまたはイベントが自動的に InPrivate として指定されます。
Windows 10 バージョン 1507 以降でサポートされます。
EVENT_ENABLE_PROPERTY_SID
イベントの拡張データにユーザーのセキュリティ識別子 (SID) を含めます。
Windows Vista 以降でサポートされています。
EVENT_ENABLE_PROPERTY_TS_ID
イベントの拡張データにターミナル セッション識別子を含めます。
Windows Vista 以降でサポートされています。
EVENT_ENABLE_PROPERTY_STACK_TRACE
EventWrite を使用して書き込まれたイベントの拡張データに呼び出し履歴トレースを追加します。
注意
ETW は、イベントの合計サイズが 64,000 を超えると、イベントを削除します。 プロバイダーが最大 64K に近いサイズのイベントをログに記録している場合は、スタック キャプチャを有効にするとイベントが失われる可能性があります。
スタックがフレームの最大数 (192) より長い場合、フレームはスタックの下部から切り取られます。
コンシューマーの場合、イベントには 、EVENT_EXTENDED_ITEM_STACK_TRACE32または拡張 アイテム EVENT_EXTENDED_ITEM_STACK_TRACE64 含まれます。 64 ビット コンピューターでは、トレースが 32 ビット トレース コントローラーによって開始された場合でも、トレースには両方の 64 ビット スタックが含まれていることに注意してください。
Windows 7 以降でサポートされています。
ControlFlags
予約済み。 0 に設定されます。
SourceId
プロバイダーを有効または無効にする呼び出し元を一意に識別する GUID。 プロバイダーが EnableCallback を実装していない場合、GUID は使用されません。
EnableFilterDesc
フィルター データを指 すEVENT_FILTER_DESCRIPTOR 構造体の配列へのポインター。 配列内の要素の数は、 FilterDescCount メンバーで指定されます。 EVENT_FILTER_DESCRIPTOR構造体の Type メンバーによって指定されたフィルターの種類ごとに記述子は 1 つだけ存在できます。
FilterDescCount
EnableFilterDesc メンバーが指すEVENT_FILTER_DESCRIPTOR配列内の要素 (フィルター) の数。
FilterDescCount メンバーは、EnableFilterDesc メンバーが指す配列内のEVENT_FILTER_DESCRIPTOR構造体の数と一致する必要があります。
解説
ENABLE_TRACE_PARAMETERS構造体はバージョン 2 の構造体であり、ENABLE_TRACE_PARAMETERS_V1構造体を置き換えます。
Windows 8.1、Windows Server 2012 R2 以降: イベント ペイロード、スコープ、スタック ウォーク フィルターは、EnableTraceEx2 関数と、ENABLE_TRACE_PARAMETERSおよびEVENT_FILTER_DESCRIPTOR構造体で使用して、ロガー セッション内の特定の条件でフィルター処理できます。 イベント ペイロード フィルターの詳細については、 EnableTraceEx2、 TdhCreatePayloadFilter、 および TdhAggregatePayloadFilters 関数と 、EVENT_FILTER_DESCRIPTOR および PAYLOAD_FILTER_PREDICATE 構造体に関するページを参照してください。
通常、64 ビット コンピューターでは、ページ フォールトが許可されていない場合、特定のコンテキストでカーネル スタックをキャプチャすることはできません。 x64 でカーネル スタックのウォークを有効にするには、メモリ管理レジストリ値を DisablePagingExecutive
1 に設定します。 レジストリ値はDisablePagingExecutive
、次のレジストリ キーの下にあります。 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management
これは、システムのメモリ使用量が増加するため、一時的な診断目的でのみ行う必要があります。
要件
サポートされている最小のクライアント | Windows 7 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 R2 [デスクトップ アプリのみ] |
Header | evntrace.h |