StorPortEtwEvent2 函式 (storport.h)

StorPortEtwEvent2 會將 Windows (ETW 的事件追蹤記錄) 事件,其中具有兩個一般用途 ETW 參數至記憶體追蹤通道。

語法

ULONG StorPortEtwEvent2(
  [in]           PVOID                                                        HwDeviceExtension,
  [in, optional] PSTOR_ADDRESS                                                Address,
  [in]           ULONG                                                        EventId,
  [in]           PWSTR                                                        EventDescription,
  [in]           ULONGLONG                                                    EventKeywords,
  [in]           STORPORT_ETW_LEVEL                                           EventLevel,
  [in]           STORPORT_ETW_EVENT_OPCODE                                    EventOpcode,
  [in, optional] PSCSI_REQUEST_BLOCK                                          Srb,
  [in, optional] _In_reads_or_z_opt_(STORPORT_ETW_MAX_PARAM_NAME_LENGTH)PWSTR Parameter1Name,
  [in]           ULONGLONG                                                    Parameter1Value,
  [in, optional] _In_reads_or_z_opt_(STORPORT_ETW_MAX_PARAM_NAME_LENGTH)PWSTR Parameter2Name,
  [in]           ULONGLONG                                                    Parameter2Value
);

參數

[in] HwDeviceExtension

迷你埠裝置延伸模組的指標。

[in, optional] Address

儲存單位裝置位址。 這個參數是適配卡裝置的NULL。

[in] EventId

ETW 事件的迷你埠定義標識碼。

[in] EventDescription

事件的描述文字。 此文字字串必須是 <= STORPORT_ETW_MAX_DESCRIPTION_LENGTH。

[in] EventKeywords

事件分類的關鍵詞旗標。 如果不需要關鍵詞,請將 設定為 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 數據收集開始事件。 這些是 Rundown 事件類型。
StorportEtwEventOpcodeDC_Stop 數據收集停止事件。 這些是 Rundown 事件類型。
StorportEtwEventOpcodeExtension 擴充事件。
StorportEtwEventOpcodeReply 回復事件。
StorportEtwEventOpcodeResume 裝置或單位在暫停後繼續。
StorportEtwEventOpcodeSuspend 裝置或單位已暫停另一項作業的擱置完成。
StorportEtwEventOpcodeReceive 從另一個元件接收活動傳輸。

[in, optional] Srb

與記錄事件相關聯的 SRB 指標。 如果此參數包含有效的 SRB,則會記錄這個 SRB 指標和相關聯的 SRB 指標。

[in, optional] Parameter1Name

Parameter1Value 意義的描述。 此參數名稱字串必須是 <= STORPORT_ETW_MAX_PARAM_NAME_LENGTH。

[in] Parameter1Value

參數 1 的值。

[in, optional] Parameter2Name

Parameter2Value 的意義描述。 此參數名稱字串必須是 <= STORPORT_ETW_MAX_PARAM_NAME_LENGTH。

[in] Parameter2Value

參數 2 的值。

傳回值

StorPortEtwEvent2 會傳回下列其中一個狀態代碼:

傳回碼 Description
STOR_STATUS_SUCCESS 已成功記錄事件。
STOR_STATUS_NOT_IMPLEMENTED 記憶體事件未啟用追蹤。
STOR_STATUS_INVALID_PARAMETER 其中一個參數無效。 例如, HwDeviceExtensionEventDescription 為 NULL、 EventDescription 大於名稱長度上限,或者 ETW 參數名稱大於最大名稱長度。

備註

迷你埠可以呼叫 StorPortEtwEvent2 來記錄兩個一般用途的 ETW 參數。 ETW 參數會以兩個名稱/值組表示。 如果參數未命名為 (ParameterXName = NULL) ,例程會將對應的參數值設定為 0。

從 StorPort 迷你埠驅動程式產生的事件會記錄到 “Microsoft-Windows-Storage-Storport/診斷” ETW 通道。

規格需求

需求
最低支援的用戶端 Windows 8.1
目標平台 Universal
標頭 storport.h (包含 Storport.h)
IRQL <= DISPATCH_LEVEL

另請參閱

StorPortEtwEvent4

StorPortEtwEvent8

StorPortEtwLogByteStream

StorPortEtwLogError