2015-05-24 112 views
7

我有一個已經部署爲Azure Web App的MVC 6網站。我使用服務器資源管理器在Visual Studio中啓用了所有跟蹤/診斷選項。我正在嘗試執行遠程調試,但我只在瀏覽器上看到錯誤500,並且未發現任何信息(或觸發錯誤斷點),確切地說錯誤發生在哪裏。如何獲取Azure Web App的錯誤500的詳細信息?

我從Azure獲得的文件日誌上找不到任何錯誤跟蹤。

如何解決Azure Web App中的錯誤500問題?

向config.json添加「CustomErrors」:{「Mode」:「Off」}不起作用。

+1

當您嘗試執行遠程調試時,您正在使用什麼版本的Visual Studio?另外,您可能需要考慮將Application Insights添加到您的Web應用程序。 –

+1

我正在使用VS 2015 RC。它說它不被支持。 –

+1

我剛剛從詳細錯誤XML中發現它是由MapRequestHandler引起的。沒有提供其他細節。 –

回答

2

對於MVC 6,你需要一個web.config文件添加到wwwroot文件夾有以下幾點:

<configuration> 
    <system.web> 
     <customErrors mode="Off"/> 
    </system.web> 
</configuration> 

這將標記添加到部署的web.config文件,並給您詳細的錯誤。有關更多詳細信息,請參閱http://docs.asp.net/en/latest/fundamentals/diagnostics.html#http-500-errors-on-azure

+1

嗨,瑞克。我不確定是否還有其他需要設置的內容。它在本地工作(我可以在Error 500頁面上看到堆棧跟蹤)。但是,在Azure上,它沒有跟蹤。我確認配置文件也已被部署。 –

+2

它沒有工作。我有這個web.config文件,但我仍然只有錯誤500沒有任何細節。 –

+1

你是如何確認你在正確的web.config中有正確的標記的?在IIS Express上不需要自定義錯誤即可獲取詳細的錯誤消息。使用Kudu確認正確的web.config是天藍色的。聽起來你的web.config中有無效的XML,在這種情況下,它不會使用你的customErrors設置。有多個故障向量。 – RickAndMSFT

0

首先,您必須在Azure上啓用LOG文件。

在MVC核心你這樣做,通過設置stdoutLogsEnabled =在web.config中真實的 - > - >

那你去Azure的應用服務控制檯,點擊診斷日誌下監測範疇。

在那裏你有FTP鏈接,你有你的日誌文件存儲。

打開它,你會看到一個詳細的錯誤。在嘗試打開LOG文件之前,不要忘記停止您的App Service服務器,否則它將無法訪問。

希望能幫到你。

相關問題