Помощь с настройкой Elmah в ASP.NET
-
21-08-2019 - |
Вопрос
Я пытаюсь настроить ЭЛЬМА для регистрации ошибок нашего приложения.Я успешно добавил модули, и у меня нет проблем с загрузкой страницы журнала ошибок (elmah.axd).Однако Elmah не регистрирует никаких тестовых исключений, которые я генерирую.
Мой web.config выглядит так:
<configSections>
<!-- Other stuff -->
<sectionGroup name="elmah">
<section name="security" requirePermission="false" type="Elmah.SecuritySectionHandler, Elmah"/>
<section name="errorLog" requirePermission="false" type="Elmah.ErrorLogSectionHandler, Elmah"/>
<section name="errorMail" requirePermission="false" type="Elmah.ErrorMailSectionHandler, Elmah"/>
</sectionGroup>
</configSections>
<elmah>
<errorLog type="Elmah.XmlFileErrorLog, Elmah" logPath="~/App_Data" />
</elmah>
<httpHandlers>
<!-- Other stuff -->
<add verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah"/>
</httpHandlers>
<httpModules>
<!-- Other stuff -->
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah"/>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/>
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah"/>
</httpModules>
Переход на страницу тестовых исключений http://localhost/elmah.axd/test
генерирует желтый экран, но нет записи в журнале.
Между предоставленным образцом и руководством по DotNetБездельники Я не вижу ничего плохого.Есть ли что-то, что мне не хватает?Я также пытался генерировать ошибки через Сигнализация, но это тоже не работает.
Я использую это против DotNetNuke, и именно здесь, как мне кажется, и заключается проблема.
Решение
Я думаю, что вам нужно отключить пользовательские сообщения об ошибках в DotNetNuke.
1.Войдите в dnn Portal как хост
2.Перейдите в Хост > Настройки хоста.
2.Перейдите в раздел Основные настройки – Внешний вид.
3.В разделе «Использовать пользовательские сообщения об ошибках» снимите флажок.
4.Нажмите Обновить.
Это отключит обработчик ошибок DotNetNuke.
Другие советы
Может быть, DNN поглощает исключения - есть ли у него собственный механизм обработки исключений?
Я использовал ELMAH с монорельсовой дорогой и столкнулся с аналогичной проблемой: Замок MonoRail и ЭЛМА
К вашему сведению Кто-нибудь другой с той же проблемой.
DNN обрабатывает все исключения, поэтому, вероятно, вы столкнулись с этой проблемой.Я считаю, что он обрабатывает событие ошибки на уровне приложения, записывая все в базу данных.Я не знаю, как это отключить, но я никогда особо не пробовал.