2017-01-27 15 views
3

У меня есть код устаревшего кода, размещенный в Azure WebJob (.exe), который генерирует много событий ETW для входа в пользовательский Event Provider.Отправлять события ETW в приложения Insights?

Как я могу получить эти события ETW в App Insights в простой форме? Я хотел бы, чтобы они появлялись в том же экземпляре AI, что и мой веб-сайт, на котором размещен веб-сайт.

ответ

2

Вот простой пример модуля отслеживания источника событий. https://github.com/AlexBulankou/ai-samples/blob/master/ETWTrackingModule.cs

Модуль обертывает слушателя ETW, который подписывается на настроенные источники событий. Вы можете указать, какие источники событий вы хотели бы подписаться, и хотите ли вы, чтобы ваши события ETW отслеживались и/или трассировались. В вашем ApplicationInsights.config, зарегистрировать этот модуль следующим образом:

<Add Type="Microsoft.ApplicationInsights.Samples.ETWTrackingModule, YourAssemblyName"> 
    <TrackEvent>True</TrackEvent> 
    <TrackTrace>True</TrackTrace> 
    <EventSources> 
    <Add Name="System.Collections.Concurrent.ConcurrentCollectionsEventSource" EventLevel="LogAlways"/> 
    <Add Name="System.Diagnostics.Eventing.FrameworkEventSource" EventLevel="LogAlways"/> 
    </EventSources> 
</Add> 
+0

Как я могу добавить ApplicationInsights.config и NuGets моему WebJob? Это просто файл .exe в моем WebJob, у меня нет доступа к изменению кода. Кроме того, как я могу указать поставщика ETW, который я хочу зарегистрировать в Application Insights? –

+0

Я принимал с моим ответом, что вы можете включить Application Insights, установив пакеты Nuget и переустановите консольное приложение как веб-работу Azure. Разве это не тот случай? –

+0

Поскольку я не могу изменить исходный код для exe, я не могу понять, как это сделать. Все равно, спасибо за помощь. –