Я только недавно получил проект в моей компании, который использует ELMAH в проекте C # MVC, который использует .NET 4.6.2. Я никогда не использовал ELMAH раньше, поэтому этот вопрос может быть глупым, но я не смог найти ответа на этот конкретный вопрос на этом сайте или через Google.
В проекте ELMAH используется для регистрации исключений вБаза данных SQL. Таблица базы данных содержит поля для приложения, хоста, типа исключения, источника, сообщения и столбца AllXml (среди прочих). Подавляющее большинство зарегистрированных ошибок, которые я понимаю, и я работаю над их отладкой.
Тем не менее, полурегулярно существует исключение, которое регистрируется с типом System.Exception , источникомстолбец пустой, а сообщение просто Внутреннее исключение равно нулю . Если я проверю XML, он содержит это в начале:
<error host="*hostname*"
type="System.Exception"
message="Inner exception is null"
detail="System.Exception: Inner exception is null"
user="*logged in user*"
time="2019-10-09T10:44:07.9624247Z">
Если я еще покопаюсь в XML, я найду точный контроллер и метод, который вызывает исключение. Однако конкретный метод не имеет блока try-catch
. Поэтому я предполагаю, что иногда этот метод вызывает исключение, которое глобально перехватывается из ELMAH.
Мой вопрос: есть ли способ изменить конфигурацию ELMAH (либо из файла web.config?), код инициализации и т. д.), чтобы, если внутреннее исключение было null
, я мог узнать, что такое настоящее исключение? С помощью приведенной выше информации об ошибке (т. Е. Просто System.Exception
и сообщение Inner exception is null
) я не могу определить причину.
Любая помощь, предложения или ссылки на аналогичные сообщения о проблемах, которые решаются,будет принята с благодарностью. Заранее спасибо.