Контроль ведения журнала .NET Framework

Трассировку событий для Windows (ETW) можно использовать для записи событий среды CLR. Для создания и просмотра трассировки можно использовать следующие инструменты.

Для регистрации событий среды CLR на компьютере должен быть установлен поставщик среды CLR. Чтобы проверить, установлен ли этот поставщик, введите в командной строке logman query providers. Откроется список поставщиков. В этом списке должна находиться следующая запись для поставщика среды CLR.

Provider                                 GUID
-------------------------------------------------------------------------------
.NET Common Language Runtime    {E13C0D23-CCBC-4E12-931B-D9CC2EEE27E4}
…………………………………………….

Если поставщика среды CLR в списке нет, его можно установить для операционной системы Windows Vista и последующих версий операционных систем, используя программу командной строки Windows Wevtutil. Откройте окно командной строки от имени учетной записи администратора. Перейдите в папку .NET Framework 4 (%WINDIR%\Microsoft.NET\Framework[64]\v4.<версия .NET>\ ). Эта папка содержит файл CLR-ETW.man. Чтобы установить поставщик среды CLR, в командной строке введите следующую команду:

wevtutil im CLR-ETW.man

Регистрация событий ETW в среде CLR

Для регистрации событий ETW можно использовать средства командной строки Logman и Xperf, а для декодирования событий трассировки — средства командной строки Tracerpt и Xperf.

Чтобы включить ведение журнала, пользователь должен указать следующее.

  • Поставщика, с которым следует обмениваться информацией.

  • 64-разрядное число, представляющее набор ключевых слов. Каждое ключевое слово представляет набор событий, которые может включить поставщик. Число представляет комбинированный набор ключевых слов, которые необходимо включить.

  • Небольшое число, представляющее уровень (детализации) ведения журнала. Уровень 1 является наименее детальным, а уровень 5 — наиболее детальным. Уровень 0 является значением по умолчанию, его назначение зависит от поставщика.

Регистрация событий ETW среды CLR с помощью программы Logman

  1. В командной строке введите:

    logman start clrevents -p {e13c0d23-ccbc-4e12-931b-d9cc2eee27e4} 0x1CCBD 0x5 -ets -ct perf

    где:

    • Параметр -p задает GUID поставщика.

    • 0x1CCBD задает категории создаваемых событий.

    • 0x5 задает уровень регистрации (в данном случае подробный (5)).

    • Параметр -ets указывает программе Logman отправлять команды сеансам трассировки событий.

    • Параметр -ct perf, определяет, что для записи отметки времени каждого события будет использоваться функция QueryPerformanceCounter.

  2. Чтобы остановить регистрацию событий, введите:

    logman stop clrevents -ets

    Эта команда создает двоичный файл трассировки clrevents.etl.

Регистрация событий ETW среды CLR с помощью программы Xperf

  1. В командной строке введите:

    xperf -start clr -on e13c0d23-ccbc-4e12-931b-d9cc2eee27e4:0x1CCBD:5 -f clrevents.etl

    где GUID — это GUID поставщика ETW среды CLR, а 0x1CCBD:5 выполняет трассировку всех событий на уровне 5 (детальный) и ниже.

  2. Чтобы остановить трассировку, введите:

    Xperf -stop clr

    Эта команда создает файл трассировки clrevents.etl.

Просмотр событий ETW среды CLR

Перечисленные ниже команды используются для просмотра событий ETW среды CLR. Описание событий см. в разделе События трассировки событий Windows в среде CLR.

Просмотр событий ETW среды CLR с помощью программы Tracerpt

  • В командной строке введите:

    tracerpt clrevents.etl

    Эта команда создает два файла: dumpfile.xml и summary.txt. Файл dumpfile.xml содержит список всех событий, а файл summary.txt содержит сводку событий.

Просмотр событий ETW среды CLR с помощью программы Xperf

  • В командной строке введите:

    xperf clrevents.etl

    Эта команда открывает программу Xperf просмотра ETL-файлов В этом средстве просмотра события CLR показаны в представлении Универсальные события. Чтобы отобразить таблицу данных событий, распределенных по типу, в этом представлении выберите часовой пояс, щелкните правой кнопкой мыши и выберите Сводка.

Преобразование ETL-файла в файл данных с разделителями-запятыми

  • В командной строке введите:

    xperf -i clrevents.etl -f clrevents.csv

    Эта команда XPerf помещает события в дамп в виде файла с разделителями-запятыми (CSV-файл), который впоследствии можно просмотреть. Поскольку у разных событий поля разные, этот CSV-файл содержит несколько строк заголовков, расположенных перед данными. Первое поле каждой строки является типом события с указанием заголовка, который должен использоваться для определения остальных полей.

См. также

Другие ресурсы

Windows Performance Toolkit

События в среде CLR (трассировка событий Windows)