Funzione StorPortEtwLogByteStream (storport.h)
StorPortEtwLogByteStream registra un evento Event Tracing for Windows (ETW) con un parametro di flusso di 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 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 da 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 terminatore NULL.
[in] EventKeywords
Flag di parole chiave per la categorizzazione degli eventi. Impostare su 0 se non è desiderata alcuna parola chiave. Le parole chiave sono una combinazione OR bit per bit del seguente.
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 alla potenza 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 a livello critico. |
StorportEtwLevelError | Evento a livello di errore. |
StorportEtwLevelWarning | Evento a livello di avviso. |
StorportEtwLevelInformational | Evento informativo. |
StorportEtwLevelVerbose | Informazioni dettagliate sugli eventi 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à è stato avviato. |
StorportetweventOpcodestop | Dispositivo o unità di arresto. L'evento corrisponde all'ultimo evento iniziale non abbinato. |
StorportEtwEventOpcodeDC_Start | Evento iniziale per la raccolta dati. Questi sono tipi di evento rundown. |
StorportEtwEventOpcodeDC_Stop | Evento di arresto della raccolta dati. Questi sono 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 del 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 i dati puntano, 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, EventDescription o Data sono NULL, DataLength è maggiore della lunghezza massima del nome, EventChannel è un valore non valido. |
STOR_STATUS_UNSUCCESSFUL | Restituito per altri motivi interni. |
Commenti
Un miniport può chiamare StorPortEtwLogByteStream per registrare un evento ETW in un canale specifico con un parametro di flusso di utilizzo generico.
StorPortEtwLogByteStream è utile quando un miniport deve registrare il contesto oltre a quello consentito in StorPortEtwEvent2, StorPortEtwEvent4 o StorPortEtwEvent8. Ad esempio, un miniport può registrare la struttura dei dati interna come flusso di byte che può quindi essere usato per scopi di diagnostica quando vengono segnalati problemi.
Requisiti
Requisito | Valore |
---|---|
Server minimo supportato | Windows Server 2022 |
Intestazione | Storport.h |