Контроль ведения журнала .NET Framework
Трассировку событий для Windows (ETW) можно использовать для записи событий среды CLR. Для создания и просмотра трассировки можно использовать следующие инструменты.
Программы командной строки Logman и Tracerpt, входящие в состав операционной системы Windows.
Программы Xperf в составе набора средств для оценки производительности Windows. Дополнительные сведения о программе Xperf см. в блоге, посвященном производительности Windows.
Для регистрации событий среды 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
Программы командной строки Logman и Xperf можно использовать для захвата событий трассировки событий Windows, а программы Tracerpt и Xperf — для расшифровки событий трассировки.
Чтобы включить ведение журнала, пользователь должен указать следующее.
Поставщика, с которым следует обмениваться информацией.
64-разрядное число, представляющее набор ключевых слов. Каждое ключевое слово представляет набор событий, которые может включить поставщик. Число представляет комбинированный набор ключевых слов, которые необходимо включить.
Небольшое число, представляющее уровень (детализации) ведения журнала. Уровень 1 является наименее детальным, а уровень 5 — наиболее детальным. Уровень 0 является значением по умолчанию, его назначение зависит от поставщика.
Регистрация событий ETW среды CLR с помощью программы Logman
В командной строке введите:
logman start clrevents -p {e13c0d23-ccbc-4e12-931b-d9cc2eee27e4} 0x1CCBD 0x5 -ets -ct perf
где:
Параметр
-p
задает GUID поставщика.0x1CCBD
задает категории создаваемых событий.0x5
задает уровень регистрации (в данном случае подробный (5)).Параметр
-ets
указывает программе Logman отправлять команды сеансам трассировки событий.Параметр
-ct perf
, определяет, что для записи отметки времени каждого события будет использоваться функцияQueryPerformanceCounter
.
Чтобы остановить регистрацию событий, введите:
logman stop clrevents -ets
Эта команда создает двоичный файл трассировки clrevents.etl.
Регистрация событий ETW среды CLR с помощью программы Xperf
В командной строке введите:
xperf -start clr -on e13c0d23-ccbc-4e12-931b-d9cc2eee27e4:0x1CCBD:5 -f clrevents.etl
где GUID — это GUID поставщика ETW среды CLR, а
0x1CCBD:5
выполняет трассировку всех событий на уровне 5 (детальный) и ниже.Чтобы остановить трассировку, введите:
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-файл содержит несколько строк заголовков, расположенных перед данными. Первое поле каждой строки является типом события с указанием заголовка, который должен использоваться для определения остальных полей.