Zijian Ответов: 0

Серилог и сек, вы ими пользуетесь? Лучше, чем системная диагностика?


Несколько месяцев назад я познакомился с Seq + Serilog в проекте Web service + Azure, который я не возглавлял. Так что у меня был небольшой практический опыт работы с этими новыми игрушками, однако я был очень озадачен, хотя руководитель команды очень хотел научить меня новой концепции . Я вырос в городе .NET world с 2003 года с концепциями:

1. Используйте трассировку и отладку системы.Диагностика; а в сложных приложениях и библиотеках используйте TraceSource.
2 .Чистая кодов нет знание механизма ведения журнала. Ведение журнала осуществляется через прослушиватели трассировки, а прослушиватели трассировки обычно вводятся настройками чтения среды выполнения .NET в элементе system.diagnostics в файле app.config, поэтому некоторые ошибки запуска могут быть зарегистрированы до запуска первой строки кода приложения.
3. Система.Диагностика, начиная с .NET Framework 2, уже обеспечивала расширенную трассировку структурированных данных и корреляцию.

С Serilog, по-видимому, вы должны создать экземпляр LoggerConfiguration в ваших кодах приложений и кодах библиотек, потому что .NET startup logic не знает об этом,
1. Таким образом, ошибки запуска не будут подхвачены Serilog.
2. и все библиотеки, которые вы создадите, должны будут ссылаться на Serilog только для того, чтобы вести журнал. Почему я всегда должен ссылаться на Serilog в каждой библиотеке? И не только сторонние библиотеки, но и WCF, WPF и WF и т. д. предоставляют богатые источники трассировки для диагностики. Серилогу их не хватает. Обходной путь заключается в использовании Serilog прослушивателя трассировки. Но лесозаготовительный прибор поверх другого прибора выглядит для меня странно.

Авторы и любители Serilog часто сравнивали Serilog с Log4Net и System.Диагностика.Трассировка, однако, я полагаю, что начиная с .NET 2, Система.Диагностика уже превзошла Log4Net с помощью TraceSource и других инструкций.

Есть ли у вас какие-то веские причины, по которым вы больше склоняетесь к Serilog, чем к System?Диагностика?

Что я уже пробовал:

Я прочитал материалы о Serilog и Seq более подробно в дополнение к тем, что есть на официальных сайтах:

Маркировка событий журнала для эффективной корреляции
Серилог в самом начале
IdentityServer 3 ведение журнала и мониторинг с помощью Serilog и Seq

0 Ответов