У меня есть несколько веб-приложений, построенных с использованием ASP.NET MVC 4/5. Все они используют Elmah для обработки ошибок, а также наши приложения получают много ошибок таймаута.Ловля всех исключений таймаута и регистрация их в Elmah с большим контекстом
Вот как он получает вход:
Операция ожидания истекло
System.ComponentModel.Win32Exception
Операция ожидания истекло
Я хочу записать что-то более значимое в теме. Что-то вроде - «DB Timeout - имя SP», которое может быть более полезным, иначе мне пришлось бы открыть каждый из этих журналов, прочитать трассировку стека и затем отладить.
Теперь, чтобы достичь этого, я знаю, что могу написать настраиваемое исключение, уловить все исключения тайм-аута db и перебросить мое настраиваемое исключение с именем хранимой процедуры.
Но это потребовало бы, чтобы я написал один и тот же кусок try catch в каждом из кода моего уровня сервиса.
Есть ли другой лучший способ, с помощью которого это можно было бы решить?