Funzione StorPortEtwLogByteStream (storport.h)
StorPortEtwLogByteStream registra un evento ETW (Event Tracing for Windows) con un parametro flusso di byte per utilizzo generico al canale specificato.
Sintassi
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
);
Parametri
[in] HwDeviceExtension
Puntatore all'estensione del dispositivo del miniport.
[in, optional] Address
Indirizzo del dispositivo dell'unità di archiviazione. Questo parametro è NULL per i dispositivi adattatori.
[in] EventChannel
Valore STORPORT_ETW_EVENT_CHANNEL che identifica il canale ETW in cui registrare l'evento.
[in] EventId
ID evento definito dal miniport che identifica in modo univoco l'evento.
[in] EventDescription
Stringa breve che descrive l'evento. EventDescription è obbligatorio e deve essere <= STORPORT_ETW_MAX_DESCRIPTION_LENGTH caratteri, non incluso il carattere di terminazione NULL.
[in] EventKeywords
Flag di parole chiave per la categorizzazione degli eventi. Impostare su 0 se non si desidera alcuna parola chiave. Le parole chiave sono una combinazione OR bit per bit delle opzioni seguenti.
Valore | Significato |
---|---|
STORPORT_ETW_EVENT_KEYWORD_IO | L'evento è correlato alle operazioni di I/O del dispositivo. |
STORPORT_ETW_EVENT_KEYWORD_PERFORMANCE | L'evento è correlato alle prestazioni. |
STORPORT_ETW_EVENT_KEYWORD_POWER | L'evento è correlato all'alimentazione del dispositivo. |
STORPORT_ETW_EVENT_KEYWORD_ENUMERATION | L'evento è correlato all'enumerazione del dispositivo. |
[in] EventLevel
Livello di evento. Questo valore può indicare l'importanza o la gravità dell'evento. Si tratta di uno dei valori seguenti.
Valore | Significato |
---|---|
StorportEtwLevelLogAlways | Registrare l'evento in modo incondizionato. L'evento viene registrato indipendentemente da qualsiasi set di filtri. |
StorportEtwLevelCritical | Evento di livello critico. |
StorportEtwLevelError | Evento a livello di errore. |
StorportEtwLevelWarning | Evento a livello di avviso. |
StorportEtwLevelInformational | Evento informativo. |
StorportEtwLevelVerbose | Informazioni dettagliate sull'evento fornite. |
[in] EventOpcode
Natura operativa dell'evento. Si tratta di uno dei valori seguenti.
Valore | Significato |
---|---|
StorportEtwEventOpcodeInfo | Evento informativo generale. |
StorportEtwEventOpcodeStart | Il dispositivo o l'unità è stata avviata. |
StorportetweventOpcodestop | Il dispositivo o l'unità è stato arrestato. L'evento corrisponde all'ultimo evento di avvio non abbinato. |
StorportEtwEventOpcodeDC_Start | Evento di avvio della raccolta dati. Si tratta di tipi di evento rundown. |
StorportEtwEventOpcodeDC_Stop | Evento di arresto della raccolta dati. Si tratta di tipi di evento rundown. |
StorportEtwEventOpcodeExtension | Evento di estensione. |
StorportEtwEventOpcodeReply | Evento di risposta. |
StorportEtwEventOpcodeResume | Il dispositivo o l'unità è stato ripreso dopo la sospensione. |
StorportEtwEventOpcodeSuspend | Il dispositivo o l'unità è sospeso in attesa di completamento di un'altra operazione. |
StorportEtwEventOpcodeReceive | Il trasferimento dell'attività viene ricevuto da un altro componente. |
[in] DataLength
Lunghezza, in byte, del flusso di byte a cui data punta, dove 1 <= DataLength<= STORPORT_ETW_MAX_BYTE_STREAM_LENGTH.
[in] Data
Puntatore al flusso di byte ETW personalizzato del miniport.
Valore restituito
StorPortEtwLogByteStream restituisce uno dei codici di stato seguenti:
Codice restituito | Descrizione |
---|---|
STOR_STATUS_SUCCESS | L'evento è stato registrato correttamente nel canale ETW specificato. |
STOR_STATUS_INVALID_PARAMETER | Un parametro non è valido. Ad esempio, HwDeviceExtension, EventDescriptiono Data sono NULL, DataLength è maggiore della lunghezza massima del nome, EventChannel è un valore non valido. |
STOR_STATUS_UNSUCCESSFUL | Restituito per altri motivi interni. |
Osservazioni
Un miniport può chiamare StorPortEtwLogByteStream per registrare un evento ETW in un canale specifico con un parametro flusso di byte per utilizzo generico.
StorPortEtwLogByteStream è utile quando un miniport deve registrare il contesto oltre a quello consentito in StorPortEtwEvent2, StorPortEtwEvent4o StorPortEtwEvent8. Ad esempio, un miniport può registrare la struttura dei dati interna come flusso di byte che può quindi essere usato per scopi diagnostici quando vengono segnalati i problemi.
Fabbisogno
Requisito | Valore |
---|---|
server minimo supportato | Windows Server 2022 |
intestazione | storport.h |