Поделиться через


Функция StorPortEtwEvent2 (storport.h)

StorPortEtwEvent2 регистрирует событие трассировки событий Windows (ETW) с двумя параметрами трассировки событий общего назначения в канал трассировки хранилища.

Синтаксис

ULONG StorPortEtwEvent2(
  [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] HwDeviceExtension

Указатель на расширение устройства мини-порта.

[in, optional] Address

Адрес устройства единицы хранения. Этот параметр имеет значение NULL для устройств адаптера.

[in] EventId

Определяемый мини-портом идентификатор для события ETW.

[in] EventDescription

Текст описания события. Эта текстовая строка должна иметь значение <= STORPORT_ETW_MAX_DESCRIPTION_LENGTH.

[in] EventKeywords

Флаги ключевых слов для классификации событий. Задайте значение 0, если ключевое слово не требуется. Ключевые слова представляют собой побитовую комбинацию ИЛИ следующего.

Значение Значение
STORPORT_ETW_EVENT_KEYWORD_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.

Возвращаемое значение

StorPortEtwEvent2 возвращает один из следующих кодов состояния:

Код возврата Описание
STOR_STATUS_SUCCESS Событие успешно зарегистрировано.
STOR_STATUS_NOT_IMPLEMENTED Трассировка для событий хранилища не включена.
STOR_STATUS_INVALID_PARAMETER Один из параметров является недопустимым. Например, HwDeviceExtension или EventDescription имеют значение NULL, EventDescription больше максимальной длины имени или имя параметра ETW больше максимальной длины имени.

Комментарии

Мини-порт может вызывать StorPortEtwEvent2 для регистрации двух параметров трассировки событий Windows общего назначения. Параметры трассировки событий Windows выражаются в виде двух пар "имя-значение". Если параметру не присвоено имя (Имя параметраX= NULL), подпрограмма установит для соответствующего параметра значение 0.

События, созданные драйверами минипорта StorPort, регистрируются в канале ETW Microsoft-Windows-Storage-Storport/Diagnose.

Требования

Требование Значение
Минимальная версия клиента Windows 8.1
Целевая платформа Универсальное
Верхняя часть storport.h (включая Storport.h)
IRQL <= DISPATCH_LEVEL

См. также раздел

StorPortEtwEvent4

StorPortEtwEvent8

StorPortEtwLogByteStream

StorPortEtwLogError