다음을 통해 공유


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

이벤트를 설명하는 필수 문자열입니다. 문자열의 최대 크기는 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의 값입니다.

[in/optional] Parameter5Name

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

[in] Parameter5Value

매개 변수 5의 값입니다.

[in/optional] Parameter6Name

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

[in] Parameter6Value

매개 변수 6의 값입니다.

[in/optional] Parameter7Name

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

[in] Parameter7Value

매개 변수 7의 값입니다.

[in/optional] Parameter8Name

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

[in] Parameter8Value

매개 변수 8의 값입니다.

반환 값

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

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

발언

미니포트는 StorPortEtwEvent8 호출하여 8개의 범용 ETW 매개 변수를 기록할 수 있습니다. ETW 매개 변수는 8개의 이름-값 쌍으로 표현됩니다. 매개 변수의 이름이 지정되지 않은 경우(매개 변수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

storPortEtwEvent4

storPortEtwLogByteStream

storPortEtwLogError