如何诊断未在 Azure 应用服务上启动的 AspNetCore 应用程序?

Sea*_*n K 9 azure kudu .net-core asp.net-core azure-appservice

我们将多个 AspNetCore 应用程序作为 OutOfProcess 托管在 Azure Web 应用程序上,并部署为具有不同路径的虚拟应用程序。

我们在不同的环境中有相同的设置,所有基础设施和应用程序都通过我们的管道自动部署,但它只在一个环境中中断,我们无法找出原因。

我们已尝试将 stdoutLogEnabled 设为 true。这揭示了一个无效的 runtime.config.json 错误,我读过这可能是由多个问题引起的,但我们无法确定任何原因。在导航到每个应用程序的 swagger URL 时,我们还会间歇性地看到 502.5 ANCM 启动失败。

如果我们查看 Azure 门户中的应用程序事件日志,就会看到此错误 failed to start process with command line 'dotnet .\<DLL>' with multiple retries. Failed to bind to port <PortNumber>

我们可以通过导航到 DLL 的位置并运行dotnet <DLL>. 应用程序成功启动,所以它似乎是网络应用程序上的问题。我们尝试重新启动、停止和启动 Web 应用程序,甚至尝试扩展应用程序服务以尝试重新启动,但没有任何成功。

我不确定我们可以采取哪些其他步骤来诊断这个问题,或者我们可能做错了什么,因为相同的应用程序在其他环境中运行良好。

小智 0

您可以尝试在应用服务中打开控制台。

在此输入图像描述

  1. 类型"dir"

  2. 查找扩展名为“.exe”的网站

  3. 输入您的站点名称(带扩展名)

  4. 然后,按回车键。它应该显示一些错误。