Función StorPortEtwEvent4 (storport.h)
StorPortEtwEvent4 registra un evento de seguimiento de eventos para Windows (ETW) con cuatro parámetros ETW de uso general en un canal de seguimiento de almacenamiento.
Sintaxis
ULONG StorPortEtwEvent4(
[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
);
Parámetros
[in] HwDeviceExtension
Puntero a la extensión del dispositivo de la minipuerto.
[in, optional] Address
Dirección del dispositivo de la unidad de almacenamiento. Este parámetro es NULL para dispositivos adaptadores.
[in] EventId
Identificador definido por miniporte para el evento ETW.
[in] EventDescription
Texto de descripción del evento. Esta cadena de texto debe ser <= STORPORT_ETW_MAX_DESCRIPTION_LENGTH.
[in] EventKeywords
Marcas de palabra clave para la categorización de eventos. Establezca en 0 si no se desea ninguna palabra clave. Las palabras clave son una combinación OR bit a bit de lo siguiente.
Valor | Significado |
---|---|
STORPORT_ETW_EVENT_KEYWORD_IO | El evento está relacionado con las operaciones de E/S del dispositivo. |
STORPORT_ETW_EVENT_KEYWORD_PERFORMANCE | El evento está relacionado con el rendimiento. |
STORPORT_ETW_EVENT_KEYWORD_POWER | El evento está relacionado con la alimentación del dispositivo. |
STORPORT_ETW_EVENT_KEYWORD_ENUMERATION | El evento está relacionado con la enumeración de dispositivos. |
[in] EventLevel
Nivel de evento. Este valor puede indicar la importancia o gravedad del evento. Se trata de uno de los siguientes valores.
Valor | Significado |
---|---|
StorportEtwLevelLogAlways | Registre el evento incondicionalmente. El evento se registra independientemente de los filtros establecidos. |
StorportEtwLevelCritical | Evento de nivel crítico. |
StorportEtwLevelError | Evento de nivel de error. |
StorportEtwLevelWarning | Evento de nivel de advertencia. |
StorportEtwLevelInformational | Evento informativo. |
StorportEtwLevelVerbose | Información detallada del evento proporcionada. |
[in] EventOpcode
Naturaleza operativa del evento. Se trata de uno de los siguientes valores.
Valor | Significado |
---|---|
StorportEtwEventOpcodeInfo | Evento informativo general. |
StorportEtwEventOpcodeStart | El dispositivo o la unidad se estaba iniciando. |
StorportEtwEventOpcodeStop | El dispositivo o la unidad se detenía. El evento corresponde al último evento de inicio no emparejado. |
StorportEtwEventOpcodeDC_Start | Evento de inicio de recopilación de datos. Estos son tipos de eventos de ejecución. |
StorportEtwEventOpcodeDC_Stop | Evento de detención de recopilación de datos. Estos son tipos de eventos de ejecución. |
StorportEtwEventOpcodeExtension | Evento de extensión. |
StorportEtwEventOpcodeReply | Evento de respuesta. |
StorportEtwEventOpcodeResume | El dispositivo o la unidad se reanudó después de la suspensión. |
StorportEtwEventOpcodeSuspend | El dispositivo o la unidad se suspenden pendientes de finalización de otra operación. |
StorportEtwEventOpcodeReceive | La transferencia de actividad se recibe de otro componente. |
[in, optional] Srb
Puntero al SRB asociado al evento registrado. Si este parámetro contiene un SRB válido, se registran este puntero SRB y el puntero SRB asociado.
[in, optional] Parameter1Name
Descripción del significado de Parameter1Value. Esta cadena de nombre de parámetro debe ser <= STORPORT_ETW_MAX_PARAM_NAME_LENGTH.
[in] Parameter1Value
Valor del parámetro 1.
[in, optional] Parameter2Name
Descripción del significado de Parameter2Value. Esta cadena de nombre de parámetro debe ser <= STORPORT_ETW_MAX_PARAM_NAME_LENGTH.
[in] Parameter2Value
Valor del parámetro 2.
[in, optional] Parameter3Name
Descripción del significado de Parameter3Value. Esta cadena de nombre de parámetro debe ser <= STORPORT_ETW_MAX_PARAM_NAME_LENGTH.
[in] Parameter3Value
Valor del parámetro 3.
[in, optional] Parameter4Name
Descripción del significado de Parameter4Value. Esta cadena de nombre de parámetro debe ser <= STORPORT_ETW_MAX_PARAM_NAME_LENGTH.
[in] Parameter4Value
Valor del parámetro 4.
Valor devuelto
StorPortEtwEvent4 devuelve uno de los siguientes códigos de estado:
Código devuelto | Descripción |
---|---|
STOR_STATUS_SUCCESS | El evento se registró correctamente. |
STOR_STATUS_NOT_IMPLEMENTED | El seguimiento no está habilitado para eventos de almacenamiento. |
STOR_STATUS_INVALID_PARAMETER | Si se devuelve este valor, significará que el parámetro en cuestión no es válido. Por ejemplo, HwDeviceExtension o EventDescription son NULL, EventDescription es mayor que la longitud máxima del nombre o un nombre de parámetro ETW es mayor que la longitud máxima del nombre. |
Comentarios
Un miniport puede llamar a StorPortEtwEvent4 para registrar cuatro parámetros ETW de uso general. Los parámetros ETW se expresan como cuatro pares nombre-valor. Si no se llama a un parámetro (ParameterXName = NULL), la rutina establecerá el valor del parámetro correspondiente en 0.
Los eventos generados a partir de los controladores de minipuerto de StorPort se registran en el canal ETW "Microsoft-Windows-Storage-Storport/Diagnose".
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 8.1 |
Plataforma de destino | Universal |
Encabezado | storport.h (incluya Storport.h) |
IRQL | <= DISPATCH_LEVEL |