你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure 应用服务诊断概述

运行 Web 应用程序时,我们希望能够对出现的各种问题做好准备,例如,出现 500 错误,或者用户反映站点已关闭。 应用服务诊断是智能的交互式体验,可帮助你排查应用的问题,且无需配置。 如果应用确实出现问题,应用服务诊断会指出问题所在,并引导你获取适当的信息,以便更轻松快速地排查和解决问题。

尽管此体验在应用过去 24 小时内出现问题时可发挥最大的作用,但是,你始终可以使用所有诊断图形进行分析。

应用服务诊断不但适用于 Windows 上的应用,也适用于 Linux/容器应用服务环境Azure Functions 上的应用。

打开应用服务诊断

若要访问应用服务诊断,请在 Azure 门户中导航到你的应用服务 Web 应用或应用服务环境。 在左侧导航栏中,单击“诊断并解决问题”。

对于 Azure Functions,请导航到函数应用,在顶部的导航栏中,单击“平台功能”并从“资源管理”部分中选择“诊断并解决问题”。

在应用服务诊断主页中,可以搜索应用的症状,或选择最能准确描述应用问题的诊断类别。 接下来,一个名为“风险警报”的新功能会提供可操作的报表来改进应用。 最后,还可以在此页中找到“诊断工具”。 请参阅诊断工具

App Service Diagnose and solve problems homepage with diagnostic search box, Risk Alerts assessments, and Troubleshooting categories for discovering diagnostics for the selected Azure Resource.

注意

如果应用程序关闭或执行速度缓慢,则可以收集分析跟踪,从而确定问题的根本原因。 分析为轻型,适用于生产方案。

诊断界面

应用服务诊断的主页提供了简化的诊断访问(使用四个部分):

  • 询问 Genie 搜索框
  • 风险警报
  • 疑难解答类别
  • 常用故障排除工具

Genie 搜索框是一种快速查找诊断的方法。 可以通过故障排除类别找到相同诊断。

App Service Diagnose and solve problems Genie search box with a search for availability app issues and a dropdown of diagnostics that match the availability search term, such as Best Practices for Availability and Performance, Web App Down, Web App Slow, High CPU Analysis, Web App Restarted.

风险警报

应用服务诊断主页执行一系列配置检查,并根据唯一应用程序的配置提供建议。

App Service Diagnose and solve problems Risk Alerts displays proactive App checks in a tile with a count of problems found and a link to view more details.

可以通过单击“查看更多详细信息”链接来查看执行的建议和检查。

App Service Diagnose and solve problems Risk Alerts right hand panel, with actionable insights tailored for the current Azure Resource App, after clicking View more details hyperlink on the homepage.

疑难解答类别

为便于发现的故障排除类别组诊断。 以下是可用的功能:

  • 可用性和性能
  • 配置和管理
  • SSL 和域
  • 风险评估
  • 导航器(预览版)
  • 诊断工具

App Service Diagnose and solve problems Troubleshooting categories list displaying Availability and Performance, Configuration and Management, SSL and Domains, Risk Assessments, Navigator (Preview) and Diagnostic Tools.

磁贴或“排除故障”链接显示类别的可用诊断。 如果有兴趣调查可用性和性能,则可使用以下诊断:

  • 概述
  • 网络应用关闭
  • Web 应用速度缓慢
  • CPU 分析频率过高
  • 内存分析
  • Web 应用重启
  • 应用程序更改(预览版)
  • 应用程序崩溃
  • HTTP 4xx 错误
  • SNAT 连接终结点失败
  • 可用性的交换效果
  • TCP 连接
  • 在生产环境中测试
  • Web 作业详细信息

App Service Diagnose and solve problems Availability and Performance category homepage, with left hand navigation containing Overview, Web App Down, Web App Slow, High CPU Analysis, Memory Analysis, Web App Restarted, Application Change (Preview), Application Crashes, HTTP 4xx Errors, SNAT Failed connection Endpoint, SNAT Port Exhaustion, Swap Effects on Availability, TCP Connections, Testing in Production, WebJob Details and the default availability dashboard for the last 24 hours of App usage, with a date and time selection interface.

诊断报告

通过单击某个主题选择进一步调查问题后,便可以查看有关该主题的更多详细信息,这些详细信息通常补充有图形和 markdown。 诊断报告是一种功能强大的工具,可用于查明应用的问题。 以下是 Web 应用可用性和性能下降:

App Service Diagnose and solve problems Availability and Performance category homepage with Web App Down diagnostic selected, which displays an availability chart, Organic SLA percentage and Observations and Solutions for problems that were detected.

复原能力分数

若要查看定制的最佳做法建议,请查看复原能力分数报表。 它以可下载 PDF 报表形式提供。 若要获取它,只需单击任何故障排除类别的命令栏上提供的“获取复原能力分数报表”按钮即可。

App Service Diagnose and solve problems Resiliency Score report, with a gauge indicating App's resilience score and what App Developer can do to improve resilience of the App.

调查应用程序代码问题(仅适用于 Windows 应用)

因为许多应用问题与应用程序代码中的问题相关,所以应用服务诊断集成了 Application Insights 来突出显示异常和依赖项问题,以便与所选故障时间进行关联。 Application Insights 必须单独启用。

Application Insights

若要查看 Application Insights 异常和依赖项,请选择“Web 应用关闭”或“Web 应用速度缓慢”磁贴快捷方式。

疑难解答步骤

如果在过去 24 小时内检测到属于特定问题类别的问题,可以查看完整的诊断报告。应用服务诊断可以提示用户查看更多的故障排除建议,以及获取引导性更强的体验所需的后续措施。

Application Insights and Troubleshooting and Next Steps

诊断工具

诊断工具包括更高级的类型,这些类型可帮助用户调查应用程序代码问题、运行缓慢、连接字符串等。 和前瞻性工具,该工具可帮助用户缓解 CPU 使用率、请求数和内存方面的问题。

主动 CPU 监视(仅适用于 Windows 应用)

当应用程序或子进程消耗 CPU 资源较高时,主动 CPU 监视可以提供一种简单且主动的操作方式。 用户可以设置自己的 CPU 阈值规则,以暂时缓解 CPU 使用率过高的问题,直到找出意外问题的真正原因。 有关详细信息,请参阅“在 CPU 问题发生前采取缓解措施”。

Proactive CPU monitoring

自动修复

自动修复是应用遇到意外行为时可以采取的缓解措施。 用户可以根据请求计数、请求缓慢、内存限制和 HTTP 状态代码设置自己的规则,以触发缓解措施。 使用此工具可暂时缓解意外行为,直到找出根本原因。 该工具目前可用于 Windows Web 应用、Linux Web 应用和 Linux 自定义容器。 支持的条件和缓解措施因 Web 应用的类型而异。 有关详细信息,请参阅在应用服务诊断中发布新的自动修复体验发布适用于 Linux 的自动修复

Auto-healing

主动自动修复(仅适用于 Windows 应用)

与主动 CPU 监视一样,主动自动修复是一种用于缓解应用程序意外行为的现成解决方案。 当应用服务确定应用处于不可恢复的状态时,主动自动修复会重启应用。 有关详细信息,请参阅“引入前瞻性自动修复”。

在采用持续集成并且应用具有许多依赖项的大型团队中,可能很难确定导致行为不正常的特定更改。 导航器可自动渲染应用的依赖项映射以及同一订阅中的所有资源,从而帮助显示应用的拓扑。 借助导航器,用户可以查看应用及其依赖项所做更改的合并列表,并缩小导致不正常行为的更改范围。 它可通过主页磁贴“导航器”进行访问,在首次使用前需要先启用。 有关详细信息,请参阅“利用导航器了解应用的依赖项”。

Navigator default page

Diff view

可以通过磁贴快捷方式、应用程序更改以及应用程序可用性和性能方面的崩溃来访问应用更改的更改分析,这样用户就可以将之与其他指标同时使用。 此功能必须先启用才可使用。 有关详细信息,请参阅“在应用服务诊断中发布新的变更分析体验”。

通过在标题中添加“[Diag]”,在 UserVoice 上发布问题或反馈。

更多资源

教程:运行负载测试以识别 Web 应用中的性能瓶颈