В чем преимущество [вставьте вашу любимую библиотеку журналов здесь] перед System.Diagnostics.Trace? - PullRequest
4 голосов
/ 19 мая 2011

Прошу прощения, если я не заметил этого, но не смог сразу найти аналогичный вопрос по SO.

.Net поставляется с некоторыми встроенными возможностями ведения журнала (по существу, System.Diagnostics.Debug и System.Diagnostics.Трассировка).

Есть ли веская причина не использовать эти встроенные средства для целей ведения журнала в типичном LOB-приложении, а вместо этого использовать log4net, NLog, блок ведения журнала EntLib или [вставить свою любимую библиотеку регистрации здесь]?

РЕДАКТИРОВАТЬ: обратите внимание, что меня больше интересует определение недостатков System.Diagnostics по сравнению с возможностями ведения журналов, а не функций различных библиотек ведения журналов.

Ответы [ 4 ]

3 голосов
/ 19 мая 2011

Я предпочитаю использовать NLog или log4net, потому что это дает мне:

  1. Регистрация целей. Я могу выбрать лучшее для определенной цели, не меняя код записи
  2. Я могу регистрировать информацию, которая мне нужна в определенной ситуации, благодаря Уровням журнала
  3. Я могу отформатировать свою запись в журнале так, как мне нравится, также по-разному для разных целей
  4. Производительность вполне нормальная, спасибо за дозировку
  5. Я не изобретаю колесо
  6. Я могу повторить это много раз
2 голосов
/ 19 мая 2011

Возможность отправки журналов на несколько конечных точек (системный журнал, база данных, журнал событий и т. Д.) Может быть полезной.

1 голос
/ 19 мая 2011

Я использую log4net, и его преимущества заключаются в том, что в конфигурационных файлах вы можете выбрать, какой уровень ведения журналов вам требуется (Критическое состояние, Ошибка, Предупреждение, Информация, Отладка), и вы получаете такие вещи, как ведение журнала электронной почты и прокрутка файлов журнала бесплатно.

0 голосов
/ 19 мая 2011

Для .net мне нравится использовать http://netcommon.sourceforge.net/doc-latest/reference/html/logging.html. Это в основном слой-обёртка сверху, так что внизу вы можете легко переключать движки регистрации.Это очень похоже на log4net.

Также есть:

http://commons.apache.org/logging/guide.html

...