Что такое новые функции ETW в CLR 4.0?

Мой коллега упомянул, что в CLR 4.0 есть некоторые существенные улучшения, связанные с Трассировка событий для Windows, но я не мог найти подробностей о том, что именно является новым. Есть несколько сообщений в блогах, в которых упоминаются только улучшения, но не приводятся какие-либо сведения о том, что именно является новым. Кто-нибудь имеет более глубокое понимание этого?

Ответ 1

Вот список событий ETW в CLR 4.0

  • Информация о времени выполнения событий ETW
  • Exception Thrown_V1 Событие ETW
  • Конфликт События ETW
  • Пул потоков ETW Events
  • События ETW для погрузчиков
  • Метод ETW Events
  • Коллекция мусора ETW Events
  • JIT Трассировка событий ETW
  • Interop ETW Events Application
  • Мониторинг ресурсов домена (ARM)  События ETW
  • Безопасность Мероприятия ETW
  • Stack ETW Event

Подробнее об этом вы можете прочитать в msdn

И также XPERF не может декодировать управляемые стеки с ETW, поэтому команда BCL выпустила еще один инструмент в кодексе, называемый Perfmonitor, который можно использовать.

НТН

Ответ 2

  • Мониторинг ресурсов домена приложения доступен через управляемые и собственные API-интерфейсы хостинга и трассировку событий для Windows (ETW).
  • Теперь вы можете получить доступ к событиям ETW для целей диагностики, чтобы повысить производительность.

http://msdn.microsoft.com/en-us/library/ms171868.aspx#core_new_features_and_improvements

Ответ 3

Два улучшения, которые вы могли бы найти, если вы выкопали в некоторых из приведенных выше ссылок, - это новый класс EventProviderTraceListener и новый < класс href= "http://msdn.microsoft.com/en-us/library/system.diagnostics.eventing.eventprovider.aspx" rel= "nofollow" > EventProvider.

EventProviderTraceListener может прослушивать TraceSources (как и любой другой TraceListener) и направлять сообщения TraceSource в систему ETW.

Класс EventProvider позволяет регистрировать сообщения непосредственно в системе ETW.

Эти классы доступны только для Vista и выше (на самом деле они "доступны" в .NET framework 4.0 на любом уровне используемой ОС, но они не работают на XP и ниже).

Я не использовал ни один из этих классов (и я не использовал ETW), но мне кажется, что они упрощают использование ETW из .NET-приложений. Если вы хотите использовать ETW, у вас все еще впереди вас, чтобы настроить ETW.

Вот статья, в которой описывается, как использовать ETW. Я не уверен, есть ли более подробная информация о ETW или нет. Обратите внимание, что эта статья была написана до того, как стали доступны новые классы .NET ETW.