StorPortEtwLogByteStream 関数 (storport.h)
StorPortEtwLogByteStream は、汎用バイト ストリーム パラメーターを使用して、イベント トレーシング for Windows (ETW) イベントを指定されたチャネルに記録します。
構文
ULONG StorPortEtwLogByteStream(
[in] PVOID HwDeviceExtension,
[in, optional] PSTOR_ADDRESS Address,
[in] STORPORT_ETW_EVENT_CHANNEL EventChannel,
[in] ULONG EventId,
[in] PWSTR EventDescription,
[in] ULONGLONG EventKeywords,
[in] STORPORT_ETW_LEVEL EventLevel,
[in] STORPORT_ETW_EVENT_OPCODE EventOpcode,
[in] USHORT DataLength,
[in] PUCHAR Data
);
パラメーター
[in] HwDeviceExtension
ミニポートのデバイス拡張機能へのポインター。
[in, optional] Address
記憶装置のデバイス アドレス。 アダプター デバイスの場合、このパラメーターは NULL です。
[in] EventChannel
イベント を ログに記録する ETW チャネルを識別するSTORPORT_ETW_EVENT_CHANNEL値。
[in] EventId
イベントを一意に識別するミニポート定義のイベント ID。
[in] EventDescription
イベントを説明する短い文字列。 EventDescription は必須であり、NULL 終端記号を含まないSTORPORT_ETW_MAX_DESCRIPTION_LENGTH文字にする必要があります <。
[in] EventKeywords
イベント分類のキーワード フラグ。 キーワード (keyword)が必要ない場合は、0 に設定します。 キーワードは、次のビットごとの OR の組み合わせです。
値 | 意味 |
---|---|
STORPORT_ETW_EVENT_KEYWORD_IO | イベントは、デバイス IO 操作に関連しています。 |
STORPORT_ETW_EVENT_KEYWORD_PERFORMANCE | イベントはパフォーマンスに関連しています。 |
STORPORT_ETW_EVENT_KEYWORD_POWER | イベントはデバイスの電源に関連しています。 |
STORPORT_ETW_EVENT_KEYWORD_ENUMERATION | イベントは、デバイスの列挙に関連しています。 |
[in] EventLevel
イベント レベル。 この値は、イベントの重要度または重大度を示すことができます。 これは次のいずれかの値です。
値 | 意味 |
---|---|
StorportEtwLevelLogAlways | イベントを無条件でログに記録します。 イベントは、設定されたフィルターに関係なくログに記録されます。 |
StorportEtwLevelCritical | クリティカル レベルのイベント。 |
StorportEtwLevelError | エラー レベル のイベント。 |
StorportEtwLevelWarning | 警告レベルのイベント。 |
StorportEtwLevelInformational | 情報イベント。 |
StorportEtwLevelVerbose | 詳細なイベント情報が提供されます。 |
[in] EventOpcode
イベントの運用上の性質。 これは次のいずれかの値です。
値 | 意味 |
---|---|
StorportEtwEventOpcodeInfo | 一般的な情報イベント。 |
StorportEtwEventOpcodeStart | デバイスまたはユニットが開始されました。 |
StorportEtwEventOpcodeStop | デバイスまたはユニットが停止していました。 イベントは、最後にペアになっていない開始イベントに対応します。 |
StorportEtwEventOpcodeDC_Start | データ収集開始イベント。 これらはランダウン イベントの種類です。 |
StorportEtwEventOpcodeDC_Stop | データ収集停止イベント。 これらはランダウン イベントの種類です。 |
StorportEtwEventOpcodeExtension | 拡張イベント。 |
StorportEtwEventOpcodeReply | 応答イベント。 |
StorportEtwEventOpcodeResume | 中断後にデバイスまたはユニットが再開されました。 |
StorportEtwEventOpcodeSuspend | デバイスまたはユニットは、別の操作の完了待ちで中断されます。 |
StorportEtwEventOpcodeReceive | アクティビティの転送は、別のコンポーネントから受け取ります。 |
[in] DataLength
Data が指すバイト ストリームの長さ (バイト単位)。 1 <= DataLength<= STORPORT_ETW_MAX_BYTE_STREAM_LENGTH。
[in] Data
ミニポートのカスタム ETW バイト ストリームへのポインター。
戻り値
StorPortEtwLogByteStream は、次のいずれかの状態コードを返します。
リターン コード | 説明 |
---|---|
STOR_STATUS_SUCCESS | イベントは、指定された ETW チャネルに正常にログに記録されました。 |
STOR_STATUS_INVALID_PARAMETER | パラメーターが無効です。 たとえば、 HwDeviceExtension、 EventDescription、または Data は NULL、 DataLength は最大名前の長さを超え、 EventChannel は無効な値です。 |
STOR_STATUS_UNSUCCESSFUL | その他の内部上の理由で返されます。 |
注釈
ミニポートは 、StorPortEtwLogByteStream を呼び出して、汎用バイト ストリーム パラメーターを使用して特定のチャネルに ETW イベントをログに記録できます。
StorPortEtwLogByteStream は、StorPortEtwEvent2、StorPortEtwEvent4、または StorPortEtwEvent8 で許可されている以外のコンテキストをミニポートがログに記録する必要がある場合に便利です。 たとえば、ミニポートは、内部データ構造をバイト ストリームとしてログに記録できます。これにより、問題が報告されたときに診断目的で使用できます。
要件
要件 | 値 |
---|---|
サポートされている最小のサーバー | Windows Server 2022 |
Header | storport.h |