다음을 통해 공유


StorPortEtwLogByteStream 함수(storport.h)

StorPortEtwLogByteStream 지정된 채널에 범용 바이트 스트림 매개 변수를 사용하여 ETW(Windows용 이벤트 추적) 이벤트를 기록합니다.

통사론

ULONG StorPortEtwLogByteStream(
  [in]           PVOID                      HwDeviceExtension,
  [in, optional] PSTOR_ADDRESS              Address,
  [in]           STORPORT_ETW_EVENT_CHANNEL EventChannel,
  [in]           ULONG                      EventId,
  [in]           PWSTR                      EventDescription,
  [in]           ULONGLONG                  EventKeywords,
  [in]           STORPORT_ETW_LEVEL         EventLevel,
  [in]           STORPORT_ETW_EVENT_OPCODE  EventOpcode,
  [in]           USHORT                     DataLength,
  [in]           PUCHAR                     Data
);

매개 변수

[in] HwDeviceExtension

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

[in, optional] Address

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

[in] EventChannel

이벤트를 기록할 ETW 채널을 식별하는 STORPORT_ETW_EVENT_CHANNEL 값입니다.

[in] EventId

이벤트를 고유하게 식별하는 미니포트 정의 이벤트 ID입니다.

[in] EventDescription

이벤트를 설명하는 짧은 문자열입니다. 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

이벤트 수준입니다. 이 값은 이벤트의 중요도 또는 심각도를 나타낼 수 있습니다. 다음 값 중 하나입니다.

의미
StorportEtwLevelLogAlways 무조건 이벤트를 기록합니다. 이벤트는 필터 집합에 관계없이 기록됩니다.
StorportEtwLevelCritical 위험 수준 이벤트입니다.
StorportEtwLevelError 오류 수준 이벤트입니다.
StorportEtwLevelWarning 경고 수준 이벤트입니다.
StorportEtwLevelInformational 정보 이벤트입니다.
StorportEtwLevelVerbose 제공된 자세한 이벤트 정보입니다.

[in] EventOpcode

이벤트의 작동 특성입니다. 다음 값 중 하나입니다.

의미
StorportEtwEventOpcodeInfo 일반 정보 이벤트입니다.
StorportEtwEventOpcodeStart 디바이스 또는 장치가 시작되었습니다.
StorportEtwEventOpcodeStop 장치 또는 장치가 중지되었습니다. 이 이벤트는 마지막으로 납입되지 않은 시작 이벤트에 해당합니다.
StorportEtwEventOpcodeDC_Start 데이터 수집 시작 이벤트입니다. 런다운 이벤트 유형입니다.
StorportEtwEventOpcodeDC_Stop 데이터 수집 중지 이벤트입니다. 런다운 이벤트 유형입니다.
StorportEtwEventOpcodeExtension 확장 이벤트입니다.
StorportEtwEventOpcodeReply 회신 이벤트입니다.
StorportEtwEventOpcodeResume 일시 중단 후 디바이스 또는 장치가 다시 재개되었습니다.
StorportEtwEventOpcodeSuspend 다른 작업이 완료될 때까지 디바이스 또는 장치가 일시 중단됩니다.
StorportEtwEventOpcodeReceive 활동의 전송은 다른 구성 요소에서 수신됩니다.

[in] DataLength

Data 가리키는 바이트 스트림의 길이(바이트)입니다. 여기서 1<= DataLength<= STORPORT_ETW_MAX_BYTE_STREAM_LENGTH.

[in] Data

미니포트의 사용자 지정 ETW 바이트 스트림에 대한 포인터입니다.

반환 값

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

반환 코드 묘사
STOR_STATUS_SUCCESS 이벤트가 지정된 ETW 채널에 성공적으로 기록되었습니다.
STOR_STATUS_INVALID_PARAMETER 매개 변수가 잘못되었습니다. 예를 들어 HwDeviceExtension , EventDescription또는 Data NULL인DataLength 최대 이름 길이보다 EventChannel 잘못된 값이.
STOR_STATUS_UNSUCCESSFUL 다른 내부 이유로 반환됩니다.

발언

미니포트는 StorPortEtwLogByteStream 호출하여 범용 바이트 스트림 매개 변수를 사용하여 ETW 이벤트를 특정 채널에 기록할 수 있습니다.

StorPortEtwLogByteStream 미니포트는 StorPortEtwEvent2, StorPortEtwEvent4또는 StorPortEtwEvent8허용된 컨텍스트를 초과하여경우에 유용합니다. 예를 들어 미니포트는 내부 데이터 구조를 바이트 스트림으로 기록할 수 있으며, 이 스트림은 문제가 보고될 때 진단 목적으로 사용할 수 있습니다.

요구 사항

요구
지원되는 최소 서버 Windows Server 2022
헤더 storport.h

참고 항목

StorPortEtwEvent2

storPortEtwEvent4

StorPortEtwEvent8

storPortEtwLogError