2013-05-24 3 views
1

Использование облачных сервисов и Azure 2.0 SDK, я хотел бы, чтобы мои ошибки ASP.NET регистрировались в службе Azure Diagnostics.Azure Cloud Services не регистрирует ошибки ASP.NET

В Visual Studio есть раздел под заголовком Сводка Диагностика называется «Windows Azure Application Logs» Также «Журнал событий»

Когда я ударил ошибку, я вижу только стандартную 500 страницу ошибки, но нет ни одного журнала, чтобы показать его.

Я не хочу, чтобы увидеть желтый экран смерти (так как это облицовочный страница клиента)

Я бы ожидать, что я мог либо открыть один из этих Azure Tables или Blobs, и увидеть трассировки стека для мои ошибки ASP.NET (например, Исключения Null Reference, ошибки платформы Entity Framework и т. д.)

Как настроить это для работы с Azure SDK 2.0?

ответ

-1

Windows Azure Diagnostics не содержит следов стека в их диагностике.

Но вы могли бы использовать ту же стратегию трассировки, которая использовалась в ваших обычных веб-приложениях (ака, System.Diagnostics.Trace). This page дает вам больше информации о том, как их использовать в Windows Azure., Или используйте библиотеки, такие как Elmah (это отличная библиотека ведения журнала, которая дает вам много информации об ошибке, включая значения FORM!).

Надеюсь, это поможет.

0
  1. В вашем облачных сервисов проекта Роль Web Azure, откройте свойства для веб-роли.
  2. Включите Enable Diagnostics и выберите пользовательского плана и нажмите Edit.
  3. От Журнальные каталоги вкладка выберите желаемый период перехода и нажмите OK.
  4. В обозревателе решений разверните узел дерева для своей веб-роли и откройте diagnostics.wadcfg.
  5. Добавьте эту строку в Directories элемента:

    <FailedRequestLogs container="wad-frq" directoryQuotaInMB="512" /> 
    
  6. В web.config, добавьте следующие под system.webServer элемента:

    <tracing> 
        <traceFailedRequests> 
        <add path="*"> 
         <traceAreas> 
         <add provider="ASPNET" areas="Infrastructure,Module,Page,AppServices" verbosity="Verbose" /> 
         <add provider="WWW Server" areas="Authentication, Security, Filter, StaticFile, CGI, Compression, Cache, RequestNotifications, Module" verbosity="Verbose" /> 
         </traceAreas> 
         <failureDefinitions statusCodes="400-599" /> 
        </add> 
        </traceFailedRequests> 
    </tracing> 
    

Изменения diagnostics.wadcfg в локальном проекте Дон» t применяется при перераспределении в существующий экземпляр веб-роли. Однако развертывание в новом промежуточном экземпляре, а затем замена работает отлично.


документация по этому фрагментирован:

  • How To Enable Diagnostics in a Cloud Service в разделе IIS Failed Request трассировки Журналы, описывает конфигурации XML.

  • Configuring Diagnostics for Azure Cloud Services описывает GUI Azure SDK, который создает большую часть diagnostics.wadcfg для вас, так что вам не нужно читать все, что в «Как включить Diagnostics в облачной службе».

Смежные вопросы