다음을 통해 공유


StorPortEtwEvent4 함수(storport.h)

미니포트는 storPortEtwEvent4 호출하여 4개의 범용 ETW 매개 변수가 있는 ETW 이벤트를 스토리지 추적 채널에 기록합니다.

통사론

ULONG StorPortEtwEvent4(
  [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] HwDeviceExtension

HBA(호스트 버스 어댑터)의 하드웨어 디바이스 확장에 대한 포인터입니다.

[in/optional] Address

스토리지 단위 디바이스 주소입니다. 이 매개 변수는 어댑터 디바이스의 경우 NULL입니다.

[in] EventId

이벤트 유형을 고유하게 식별하는 미니포트 정의 식별자입니다.

[in] EventDescription

이벤트를 설명하는 필수 문자열입니다. 문자열의 최대 크기는 null 종결자를 포함하지 않고 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

이벤트의 중요도 또는 심각도를 지정하는 STORPORT_ETW_LEVEL 값입니다.

[in] EventOpcode

이벤트의 작동 특성을 지정하는 STORPORT_ETW_EVENT_OPCODE 값입니다.

[in/optional] Srb

기록된 이벤트와 연결된 SRB에 대한 포인터입니다. 이 매개 변수에 유효한 SRB가 포함된 경우 이 SRB 포인터와 연결된 SRB 포인터가 기록됩니다.

[in/optional] Parameter1Name

Parameter1Value의미에 대한 설명입니다. 문자열의 최대 크기는 null 종결자를 포함하지 않고 STORPORT_ETW_MAX_PARAM_NAME_LENGTH 문자입니다.

[in] Parameter1Value

매개 변수 1의 값입니다.

[in/optional] Parameter2Name

Parameter2Value의미에 대한 설명입니다. 문자열의 최대 크기는 null 종결자를 포함하지 않고 STORPORT_ETW_MAX_PARAM_NAME_LENGTH 문자입니다.

[in] Parameter2Value

매개 변수 2의 값입니다.

[in/optional] Parameter3Name

Parameter3Value의미에 대한 설명입니다. 문자열의 최대 크기는 null 종결자를 포함하지 않고 STORPORT_ETW_MAX_PARAM_NAME_LENGTH 문자입니다.

[in] Parameter3Value

매개 변수 3의 값입니다.

[in/optional] Parameter4Name

Parameter4Value의미에 대한 설명입니다. 문자열의 최대 크기는 null 종결자를 포함하지 않고 STORPORT_ETW_MAX_PARAM_NAME_LENGTH 문자입니다.

[in] Parameter4Value

매개 변수 4의 값입니다.

반환 값

StorPortEtwEvent4 다음 상태 코드 중 하나를 반환합니다.

반환 코드 묘사
STOR_STATUS_SUCCESS 이벤트가 성공적으로 기록되었습니다.
STOR_STATUS_NOT_IMPLEMENTED 스토리지 이벤트에는 추적을 사용할 수 없습니다.
STOR_STATUS_INVALID_PARAMETER 매개 변수 중 하나가 잘못되었습니다. 예를 들어 HwDeviceExtension 또는 EventDescription NULL이거나, eventDescription 최대 이름 길이보다 크거나, ETW 매개 변수 이름이 최대 이름 길이보다 큽니다.

발언

미니포트는 StorPortEtwEvent4 호출하여 4개의 범용 ETW 매개 변수를 기록할 수 있습니다. ETW 매개 변수는 네 개의 이름-값 쌍으로 표현됩니다. 매개 변수의 이름이 지정되지 않은 경우(매개 변수XName = NULL) 루틴은 해당 매개 변수 값을 0으로 설정합니다.

StorPort 미니포트 드라이버에서 생성된 이벤트는 "Microsoft-Windows-Storage-Storport/Diagnostice" ETW 채널에 기록됩니다.

요구 사항

요구
지원되는 최소 클라이언트 Windows 8.1
대상 플랫폼 보편적
헤더 storport.h(Storport.h 포함)
IRQL <= DISPATCH_LEVEL

참고 항목

StorPortNvmeMiniportEvent

StorPortEtwChannelEvent2

StorPortEtwChannelEvent4

StorPortEtwChannelEvent8

StorPortEtwEvent2

StorPortEtwEvent8

storPortEtwLogByteStream

storPortEtwLogError