Какие именно новые функции ETW в CLR 4.0?
Вопрос
Мой коллега упомянул, что в CLR 4.0 существуют некоторые серьезные улучшения Отслеживание событий для Windows Но я не мог найти подробности того, что именно новое. Есть несколько сообщений в блоге, в которых упоминается только улучшения, но не предоставляют никаких подробностей о том, что именно новое. У кого -нибудь больше понимает это?
Решение
Вот список событий ETW в CLR 4.0
- Информация о выполнении ETW события
- Исключение Thround_V1 ETW событие
- События ETW
- События ETW Thread Pool
- Погрузчики ETW события
- Метод событий ETW
- Сборник мусора ETW события
- JIT Tracing ETW события
- Interop ETW Events Приложение
- События ETW мониторинга домена (ARM)
- Безопасность ETW события
- Stack ETW событие
Для получения подробного объяснения об этом вы можете прочитать их в MSDN
А также Xperf не может декодировать управляемые стеки с ETW, поэтому BCL Team выпустила еще один инструмент в Codeplex под названием Перфмомитор который можно использовать.
Hth
Другие советы
- Мониторинг ресурсов приложений доступен через управляемые и нативные API хостинга и отслеживание событий для Windows (ETW).
- Теперь вы можете получить доступ к событиям ETW для диагностических целей, чтобы повысить производительность.
http://msdn.microsoft.com/en-us/library/ms171868.aspx#core_new_features_and_improvements
Два улучшения, которые вы, вероятно, можете найти, если бы вы копались в некоторых ссылках выше, - это новое EventProviderTraceListener класс и новый EventProvider учебный класс.
EventProviderTracelistener может прослушать трассуры (как и любой другой трасселистен) и направлять сообщения Tracesource в систему ETW.
Класс EventProvider позволяет вам входить в систему сообщения непосредственно в систему ETW.
Эти классы доступны только на Vista и выше (на самом деле, они «доступны» в .NET Framework 4.0 на любом уровне ОС, который вы используете, но они не работают на XP и ниже).
Я не использовал ни один из этих классов (при этом я не использовал ETW), но мне кажется, что они значительно облегчают использование ETW из приложений .NET. Если вы хотите использовать ETW, у вас все еще есть какая -то работа впереди, чтобы самостоятельно настроить ETW.
Вот статья, в которой описывается, как использовать ETW. Я не уверен, есть ли более текущая информация о ETW или нет. Обратите внимание, что эта статья была написана до того, как новые классы .NET ETW стали доступны.