Прошло много времени с тех пор, как был опубликован первый пост об этом, и после того, как я провел небольшое исследование для себя, я считаю, что нашел лучший и более свежий ресурс, чем принятый ответ.Ниже приведено немного больше информации о том, как настроить Log4Net и интегрировать его в свои модули: http://www.dnnsoftware.com/community-blog/cid/141723/Using-log4net-with-DotNetNuke.
Похоже, что одним из преимуществ использования подхода Log4Net является возможность настроить уровень ведения журнала, чтобы приложения моглибыть более легко исследованным и отлаженным.Это может быть особенно полезно при перемещении приложений между средами.Я использовал это при отладке приложения на сервере, где я не могу подключиться к процессу и прервал приложение для отладки.Я поднимаю уровень регистрации и работаю с информацией в журнале.Это может быть болезненным, болезненным способом отладки, но действительно полезным, когда вы застряли.
В DNN 7 упомянутый здесь класс DnnLog устарел, поэтому, вероятно, следует изучить альтернативы.
Похоже, что класс пользовательских исключений предназначен для исключений, которые должны регистрироваться во всех случаях.Я нашел эту немного более старую статью, которая, вероятно, все еще актуальна, если есть необходимость регистрировать пользовательскую информацию, http://www.ifinity.com.au/Blog/EntryId/114/Creating-Exception-Logging-with-DotNetNuke. Некоторые классы необходимо будет обновить, но общая методика выглядела хорошо и больше соответствует предложению Криса выше.С небольшой настройкой этот пример может быть использован для реализации настраиваемого уровня ведения журнала.