Отслеживание ETW из .net, пользовательский режим и драйвер - PullRequest
6 голосов
/ 26 февраля 2010

У нас есть приложение, часть которого находится в драйверах .net, c ++ usermode и C ++. Приложение разделено на несколько исполняемых файлов, которые запускаются по требованию и взаимодействуют друг с другом с помощью LPC (процессы выполняются в разных сеансах (winlogon)).

В настоящее время у нас есть домашняя служба ведения журналов, с которой пользовательские моды .net и c ++ взаимодействуют, отправляя сообщения LPC. Драйвер использует DbgPrint и не всегда включен, так как он заставляет код работать на 30% медленнее (у нас много журналирования).

Я хочу, чтобы все журналы были записаны в одном месте, и желательно, чтобы я не писал сам логгер (я люблю log4cpp и log4net). Требуется записать все исполняемые файлы и драйверы в одно место и иметь минимальные накладные расходы.

Я читал, что ETW - это путь, однако я не смог найти уже написанный логгер, который использует его, например, log4cpp или log4net.

Итак, в основном мои вопросы: знаете ли вы, если уже есть реализованный ETW appender для log4cpp и log4net, который я могу использовать?

Ответы [ 3 ]

1 голос
/ 19 марта 2010
1 голос
/ 19 марта 2010

Вот пример реализации ETW .NET. Это не ETW для log4net. Надеюсь, это поможет.

http://naveensrinivasan.com/2010/03/17/using-clr-4-0-event-tracing-for-windows-etw-along-with-application-etw/

0 голосов
/ 08 октября 2014

Я из будущего ... * Блок приложения семантической регистрации (SLAB) Корпоративной библиотеки должен служить вам хорошо:)

...