2017-01-17 9 views
0

Мы планируем внедрить все наш журнал (трассировка, аудит, активность, ошибка и т. Д.) С использованием пользовательских ETW EventSources в нашем приложении ASP.NET Web API. Мы хотим вывести эти события в файл журнала, имея возможность настроить уровень журнала.Регистрация пользовательских событий ETW на IIS в производстве

Мои вопросы:

1. Как настроить сайт в IIS, так что он выводит пользовательские события ETW в лог-файл?

В IIS в разделе Logging/Log Event Destination имеется возможность записывать события ETW в файл, но, похоже, он не выводит результат по пути в поле Файл журнала/Каталог. Кроме того, я не нашел никаких указаний, если это должно работать с нашими пользовательскими типами на основе EventSource или только с стандартными поставщиками услуг IIS ETW.

https://www.iis.net/learn/get-started/whats-new-in-iis-85/logging-to-etw-in-iis-85

2. Как настроить эту установку для производства?

С одной стороны, я попытался найти настройки .config, которые сделают эту работу, но я просто стал более смущен. Нужен ли мне специальный прослушиватель трассировки, который записывает в файл и ссылку в web.config? Есть ли встроенный компонент, который принимает назначение файла, может быть, значение уровня журнала и выводит результаты?

https://www.iis.net/configreference/system.webserver/httptracing

С другой стороны, я нашел некоторые образцы для потребления этих событий с помощью PerfView, но я полагаю, разжигая PerfView на сервере для всех наших журналов и не только отладки не лучшие практики для производства (или это):

https://blogs.msdn.microsoft.com/vancem/2012/08/14/etw-in-c-controlling-which-events-get-logged-in-an-system-diagnostics-tracing-eventsource/

Спасибо!

+0

Возможно, вы хотите https://msdn.microsoft.com/en-us/library/dn775014(v=pandp.20).aspx? –

+0

@PeterBons Блок приложений семантического ведения журналов выглядел идеально, пока не обнаружил, что он не обновляется через некоторое время и еще не поддерживает .NET 4.6 :( См. Https://github.com/mspnp/ semantic-logging/issues/91 # issuecomment-271450414 – Trogdor

+0

Он работает под .Net 4.6 (я сам его использую), но не могу использовать некоторые из продвинутых материалов, представленных в этой версии. Но это правда, так как это стабильно, это не в соответствии с https://github.com/mspnp/semantic-logging/issues/91 https://github.com/Azure/diagnostics-eventflow будет рекомендован и, по-видимому, более приспособлен для облачных сценариев. Я обнаружил, что по-прежнему не хватает базовой документации. –

ответ

0

IIS создает выход по пути в поле Файл журнала/Каталог. Вы можете перейти в C: \ inetpub \ logs \ LogFiles \ W3SVC1 и посмотреть журналы IIS.

Log file in my system

А что касается протоколирования пользовательских событий в лог-файлы, попробуйте использовать семантический блок приложений протоколирования. https://msdn.microsoft.com/en-us/library/dn440729(v=pandp.60).aspx