Я хотел бы получить рассказы о том, как люди обрабатывают трассировку и протоколирование в реальных приложениях. Вот несколько вопросов, которые могут помочь объяснить ваш ответ.
Каркасы
Какие рамки вы используете?
- log4net
- System.Diagnostics.Trace
- System.Diagnostics.TraceSource
- Блок приложений журнала
- Другое?
Если вы используете трассировку, используете ли вы Trace.Correlation.StartLogicalOperation?
Вы пишете этот код вручную или используете какую-то форму аспектно-ориентированного программирования? Хотите поделиться фрагментом кода?
Предоставляете ли вы какую-либо форму детализации по источникам трассировки? Например, WPF TraceSources позволяет вам настраивать их на разных уровнях:
- System.Windows - настройки для всех WPF
- System.Windows.Animation - переопределить специально для анимации.
Слушателей
Какие выходы журнала вы используете?
- Текстовые файлы
- XML файлы
- Журнал событий
- Другое?
При использовании файлов вы используете скользящие журналы или только один файл? Как сделать журналы доступными для людей?
Просмотр
Какие инструменты вы используете для просмотра журналов?
- Блокнот
- Tail
- Просмотр событий
- Центр управления Operations Manager/Microsoft Operations Manger
- Средство просмотра трассировки WCF
- Другое?
Если вы создаете решение ASP.NET, используете ли вы также мониторинг работоспособности ASP.NET? Включите вывод трассировки в событиях мониторинга работоспособности? Как насчет Trace.axd?
Как насчет пользовательских счетчиков производительности?