Мы используем две опции для нашей регистрации: -
ELMAH для обработки непредвиденных исключений
NLog для ожидаемой, ручной (отладка, информация и ошибка) информации.
ELMAH - это отличный готовый плагин, который автоматически фиксирует исключения (от 404 (страница не найдена) до 500 брошенных исключений) и имеет встроенный веб-интерфейс для визуализации этих ошибок. , Так что это действительно быстрый и эффективный способ обнаружения неожиданных ошибок, которые происходят.
Теперь NLog дополняет , так как наши разработчики вручную вставляют отладочную информацию в код в определенных местах, поэтому, когда нам нужно получить информацию из системы, не являющейся locahost, это очень просто. Например, мы засоряем код log.Debug(..)
в большинстве наших методов, чтобы увидеть, что представляют собой локальные переменные или возвращаемые значения и т. Д. Для получения более важной информации мы затем используем log.Info(..)
.. но используем это гораздо реже. Наконец, для серьезных ошибок, которые мы уловили и обработали, мы используем log.Error(..)
или log.Warn(..)
.. обычно внутри некоторых try/catch
областей. Таким образом, на наших тестовых или живых серверах мы затем включаем все состояния регистрации (например, Debug
и выше), если нам нужно получить МНОГО данных, живых ... или просто важную информацию общего характера, такую как Info
состояний и больше. У нас всегда есть Warn, Error and Fatal
состояний. Состояние отладки генерирует МНОГО данных, поэтому мы используем их только экономно.
Итак, для подведения итогов я предлагаю вам использовать ДВА подхода к вашему WebApp. Элма за превосходную неожиданную перехват ошибок и NLog за ожидаемую информацию и ошибки.
Наконец, NLog НАСТОЛЬКО проще в использовании / работе, чем Log4Net. Это в основном превосходит его, ИМО.