StorPortEtwEvent8 函数 (storport.h)

微型端口调用 StorPortEtwEvent8,以将具有 8 个常规用途 ETW 参数的 ETW 事件记录到存储跟踪通道。

语法

ULONG StorPortEtwEvent8(
  [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/optional] _In_reads_or_z_opt_(STORPORT_ETW_MAX_PARAM_NAME_LENGTH)PWSTR Parameter3Name,
  [in]          ULONGLONG                                                    Parameter3Value,
  [in/optional] _In_reads_or_z_opt_(STORPORT_ETW_MAX_PARAM_NAME_LENGTH)PWSTR Parameter4Name,
  [in]          ULONGLONG                                                    Parameter4Value,
  [in/optional] _In_reads_or_z_opt_(STORPORT_ETW_MAX_PARAM_NAME_LENGTH)PWSTR Parameter5Name,
  [in]          ULONGLONG                                                    Parameter5Value,
  [in/optional] _In_reads_or_z_opt_(STORPORT_ETW_MAX_PARAM_NAME_LENGTH)PWSTR Parameter6Name,
  [in]          ULONGLONG                                                    Parameter6Value,
  [in/optional] _In_reads_or_z_opt_(STORPORT_ETW_MAX_PARAM_NAME_LENGTH)PWSTR Parameter7Name,
  [in]          ULONGLONG                                                    Parameter7Value,
  [in/optional] _In_reads_or_z_opt_(STORPORT_ETW_MAX_PARAM_NAME_LENGTH)PWSTR Parameter8Name,
  [in]          ULONGLONG                                                    Parameter8Value
);

参数

[in] HwDeviceExtension

指向主机总线适配器(HBA)的硬件设备扩展的指针。

[in/optional] Address

存储设备设备地址。 对于适配器设备,此参数为 NULL。

[in] EventId

用于唯一标识事件类型的微型端口标识符。

[in] EventDescription

描述事件的必需字符串。 字符串的最大大小为 STORPORT_ETW_MAX_DESCRIPTION_LENGTH 个字符,不包括 null 终止符。

[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

一个 STORPORT_ETW_LEVEL 值,该值指定事件的重要性或严重性。

[in] EventOpcode

一个指定事件作性质的 STORPORT_ETW_EVENT_OPCODE 值。

[in/optional] Srb

指向与记录的事件关联的 SRB 的指针。 如果此参数包含有效的 SRB,则会记录此 SRB 指针和关联的 SRB 指针。

[in/optional] Parameter1Name

Parameter1Value的含义的说明。 字符串的最大大小是 STORPORT_ETW_MAX_PARAM_NAME_LENGTH 个字符,不包括 null 终止符。

[in] Parameter1Value

参数 1 的值。

[in/optional] Parameter2Name

Parameter2Value的含义的说明。 字符串的最大大小是 STORPORT_ETW_MAX_PARAM_NAME_LENGTH 个字符,不包括 null 终止符。

[in] Parameter2Value

参数 2 的值。

[in/optional] Parameter3Name

Parameter3Value的含义的说明。 字符串的最大大小是 STORPORT_ETW_MAX_PARAM_NAME_LENGTH 个字符,不包括 null 终止符。

[in] Parameter3Value

参数 3 的值。

[in/optional] Parameter4Name

Parameter4Value的含义的说明。 字符串的最大大小是 STORPORT_ETW_MAX_PARAM_NAME_LENGTH 个字符,不包括 null 终止符。

[in] Parameter4Value

参数 4 的值。

[in/optional] Parameter5Name

Parameter5Value的含义的说明。 字符串的最大大小是 STORPORT_ETW_MAX_PARAM_NAME_LENGTH 个字符,不包括 null 终止符。

[in] Parameter5Value

参数 5 的值。

[in/optional] Parameter6Name

Parameter6Value的含义的说明。 字符串的最大大小是 STORPORT_ETW_MAX_PARAM_NAME_LENGTH 个字符,不包括 null 终止符。

[in] Parameter6Value

参数 6 的值。

[in/optional] Parameter7Name

Parameter7Value的含义的说明。 字符串的最大大小是 STORPORT_ETW_MAX_PARAM_NAME_LENGTH 个字符,不包括 null 终止符。

[in] Parameter7Value

参数 7 的值。

[in/optional] Parameter8Name

Parameter8Value的含义的说明。 字符串的最大大小是 STORPORT_ETW_MAX_PARAM_NAME_LENGTH 个字符,不包括 null 终止符。

[in] Parameter8Value

参数 8 的值。

返回值

StorPortEtwEvent8 返回以下状态代码之一:

返回代码 描述
STOR_STATUS_SUCCESS 已成功记录该事件。
STOR_STATUS_NOT_IMPLEMENTED 未为存储事件启用跟踪。
STOR_STATUS_INVALID_PARAMETER 其中一个参数无效。 例如,HwDeviceExtensionEventDescription 为 NULL,EventDescription 大于最大名称长度,或者 ETW 参数名称大于最大名称长度。

言论

微型端口可以调用 StorPortEtwEvent8 来记录 8 个常规用途 ETW 参数。 ETW 参数表示为八个名称值对。 如果未命名参数(参数XName = NULL),则例程会将相应的参数值设置为 0。

从 StorPort 微型端口驱动程序生成的事件记录到“Microsoft-Windows-Storage-Storport/诊断”ETW 通道。

要求

要求 价值
最低支持的客户端 Windows 8.1
目标平台 普遍
标头 storport.h (包括 Storport.h)
IRQL <= DISPATCH_LEVEL

另请参阅

StorPortNvmeMiniportEvent

StorPortEtwChannelEvent2

StorPortEtwChannelEvent4

StorPortEtwChannelEvent8

StorPortEtwEvent2

StorPortEtwEvent4

StorPortEtwLogByteStream

StorPortEtwLogError