У нас есть рабочая роль Azure, которая выполняет тяжелую асинхронную рабочую нагрузку с множеством завершений для потоков ввода-вывода и тому подобного.
Иногда необработанные исключения возникают в асинхронных обратных вызовах, которые нам не принадлежат. Это, в свою очередь, приводит к сбою роли.
В приложениях ASP.NET, отличных от Azure, мы можем избежать этого, включив устаревшую политику необработанных исключений в aspnet.config следующим образом:
Есть ли способ сделать то же самое для рабочей роли Azure? Мы попытались поместить это в app.config для проекта роли, но это не сработало (поскольку нам, вероятно, придется как-то добавить его в WaWorkerHost.exe.config).
Нам известны AppDomain.CurrentDomain.UnhandledException
и Application.SetUnhandledExceptionMode
, и Как перехватить необработанное исключение в Windows Azure (Worker) Role и это не решает нашу проблему.