Как правильно регистрировать каждое исключение, используя OWIN

мой вопрос должен быть довольно простым, но, к сожалению, мне не повезло в его решении.

По сути, у меня есть несколько контроллеров Web API, размещенных в OWIN и развернутых в Azure.

Мне действительно нужно отслеживать исключения, которые происходят в каждом промежуточном программном обеспечении (например,OAuthAuthorizationServerProvider или жеSignalR Постоянные соединения), но я точно не знаю, как этого добиться.

Я пробовал Elmah, но он не работает должным образом с OWIN из-за отсутствияHttpContext.Я пытался использовать log4net, но я могу регистрировать только исключения, генерируемые контроллерами Web API, используя пользовательский ExceptionFilterAttribute. Другие игнорируются.Я попытался определить пользовательский LoggerFactory и назначить его в автозагрузке, используяapp.SetLoggerFactory(new MyLoggerFactory()), но исключение, выброшенное другими промежуточными программами, не регистрируется.Я пытался получить хотя бы значимое сообщение об ошибке, отправленное клиенту, но, несмотря на<customErrors mode="Off"/> а также<deployment retail="false"/>Azure отказывается возвращать что-либо, кроме{"message":"an error has occurred"}.. Я пробовал веб-сайты Azure и облачные службы Azure.Я видел несколько облачных альтернатив, которыедолжен работать с OWIN, например, Elmah.io или Raygun.io, но мне не нужны их облачные функции, и определенно не стоит платить сотни долларов в год только за регистрацию некоторых исключений.

Какой должен быть лучший способрегистрировать любые возможные исключения брошенный моим заявлением?

Спасибо за вашу помощь

Ответы на вопрос(1)

Ваш ответ на вопрос