다음을 통해 공유


StorPortEtwEvent8 함수(storport.h)

StorPortEtwEvent8은 8 개의 범용 ETW 매개 변수를 사용하여 ETW(Windows용 이벤트 추적) 이벤트를 스토리지 추적 채널에 기록합니다.

구문

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

미니포트의 디바이스 확장에 대한 포인터입니다.

[in, optional] Address

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

[in] EventId

ETW 이벤트에 대한 미니포트 정의 식별자입니다.

[in] EventDescription

이벤트에 대한 설명 텍스트입니다. 이 텍스트 문자열은 <= 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, 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의 값입니다.

[in, optional] Parameter3Name

Parameter3Value의 의미에 대한 설명입니다. 이 매개 변수 이름 문자열은 <= STORPORT_ETW_MAX_PARAM_NAME_LENGTH.

[in] Parameter3Value

매개 변수 3의 값입니다.

[in, optional] Parameter4Name

Parameter4Value의 의미에 대한 설명입니다. 이 매개 변수 이름 문자열은 <= STORPORT_ETW_MAX_PARAM_NAME_LENGTH.

[in] Parameter4Value

매개 변수 4의 값입니다.

[in, optional] Parameter5Name

Parameter5Value의 의미에 대한 설명입니다. 이 매개 변수 이름 문자열은 <= STORPORT_ETW_MAX_PARAM_NAME_LENGTH.

[in] Parameter5Value

매개 변수 5의 값입니다.

[in, optional] Parameter6Name

Parameter6Value의 의미에 대한 설명입니다. 이 매개 변수 이름 문자열은 <= STORPORT_ETW_MAX_PARAM_NAME_LENGTH.

[in] Parameter6Value

매개 변수 6의 값입니다.

[in, optional] Parameter7Name

Parameter7Value의 의미에 대한 설명입니다. 이 매개 변수 이름 문자열은 <= STORPORT_ETW_MAX_PARAM_NAME_LENGTH.

[in] Parameter7Value

매개 변수 7의 값입니다.

[in, optional] Parameter8Name

Parameter8Value의 의미에 대한 설명입니다. 이 매개 변수 이름 문자열은 <= 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개의 이름-값 쌍으로 표현됩니다. 매개 변수의 이름이 지정되지 않은 경우(매개 변수X이름 = NULL) 루틴은 해당 매개 변수 값을 0으로 설정합니다.

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

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8.1
대상 플랫폼 유니버설
헤더 storport.h(Storport.h 포함)
IRQL <= DISPATCH_LEVEL

추가 정보

StorPortEtwEvent2

StorPortEtwEvent4

StorPortEtwLogByteStream

StorPortEtwLogError