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


Просмотр трассировки ТРАССИРОВКИ СОБЫТИЙ WINDOWS ЧЕРЕЗ USB в Netmon

В этой статье описывается, как просмотреть файл трассировки событий с помощью Netmon.

После установки Netmon и настройки его для использования с USB-файлами ETW, как описано в разделе Установка Netmon и средств синтаксического анализа ETW USB, его можно использовать для проверки файла трассировки.

Открытие etw-файла

Чтобы просмотреть файл трассировки в Netmon, на начальном экране введите "netmon", чтобы открыть Netmon. Откройте файл трассировки одним из следующих способов:

  • В меню Файл нажмите кнопку Открыть, щелкните Запись, а затем выберите ETL-файл.
  • Нажмите кнопку Открыть запись и выберите ETL-файл.
  • Нажмите клавиши CTRL+O и выберите ETL-файл.

Трассировка событий состоит из отдельных событий, каждое из которых указывает на то, что произошло в стеке драйверов. Каждое событие соответствует одному из нескольких типов, определенных стеком драйверов.

Снимок экрана: окно Netmon с событием, выбранным в разделе

Обратите внимание, что события перечислены в области Сводка по кадрам . На предыдущем изображении показаны четные значения из стека драйверов USB 2.0. Обратите внимание на следующие столбцы на этой панели:

  • Смещение времени: метка времени для события, указанная в качестве смещения от времени начала журнала.
  • Имя протокола: драйвер, который зарегистрировал событие. Для событий USB драйвером является USB-концентратор или USB-порт.
  • Описание: описательное имя события.

Выберите событие в области Сводка по кадрам . Netmon отображает сведения о событии в области Сведения о кадре и Сведения о шестнадцатеричном формате . В области Сведения о фрейме разверните элементы, чтобы изучить сведения о событии. Пример использования Netmon для изучения файла трассировки USB см. в разделе Пример: устранение неполадок с неизвестным USB-устройством с помощью ETW и Netmon.

Новые столбцы в средстве синтаксического анализа ETW USB для стека драйверов USB 3.0

Важные типы событий из стека драйверов USB 2.0 также определяются в стеке драйверов USB 3.0. Однако между этими типами существуют незначительные различия. Например, рассмотрим тип события завершения передачи элементов управления USB (Описание : USBPort:Complete URB_FUNCTION_CONTROL_TRANSFER_EX с данными):

Для типа событий стека драйвера USB 2.0 в области Сведения о кадре отображаются idVendor (также известный как USB VID) и idProduct (также известный как USB PID). На этом изображении показана трассировка событий для устройства USB 2.0, подключенного к хост-контроллеру USB 2.0.

Снимок экрана: окно Netmon с трассировкой событий для устройства US B, подключенного к контроллеру узла U SS B в области

Для типа событий стека драйверов USB 3.0 область Сведения о кадре не содержит idVendor или idPid. Эта информация доступна путем добавления новых столбцов в область Сводка по кадрам , как показано на этом рисунке.

Обратите внимание на следующие новые столбцы:

  • Описание USB-устройства
  • USB Vid
  • USB Pid
  • Длина USB
  • Длительность запроса USB

Microsoft Network Monitor.

Все трассировки событий USB (USB 2.0 и USB 3.0) теперь отображают дополнительные сведения о запросе по мере завершения каждого URB. Обратите внимание на такие значения, как "41 из 255" в разделе Длина USB. Эти значения указывают фактическую длину передачи каждой urb по завершении с контекстом общей длины запроса (исходный TransferBufferLength, заданный драйвером клиента). Кроме того, вы можете просмотреть, сколько времени (в секундах) потребовалось для выполнения запроса, в столбце Длительность запроса USB .

Добавление фильтров в область фильтра отображения

Фильтры записи можно использовать для сужения трассировки событий для определенного сценария. Вы можете написать новые фильтры для трассировок событий из стеков драйверов USB 2.0 и USB 3.0:

USBIsError == 1      // Any error events from the USB drivers
USBIsDisconnect == 1 // Show when any device disconnected

Все столбцы можно фильтровать. Чтобы создать фильтр, щелкните ячейку правой кнопкой мыши и выберите Добавить имя<> столбца в фильтр отображения. Netmon создает фильтр на основе его значения и имени столбца и добавляет его в область Фильтр отображения .