对在虚拟网络中运行 Azure Spring Apps 进行自行诊断

注意

Azure Spring Apps 是 Azure Spring Cloud 服务的新名称。 虽然该服务有新名称,但一些地方仍会使用旧名称,我们仍在更新屏幕截图、视频和图形等资产。

本文演示如何使用 Azure Spring Apps 诊断来诊断和解决在虚拟网络中运行的 Azure Spring Apps 中的问题。

Azure Spring Apps 诊断支持对虚拟网络中运行的应用程序进行交互式故障排除,无需进行配置。 Azure Spring Apps 诊断会识别问题,并指导你获取有助于排查和解决问题的信息。

使用以下步骤开始为联网应用程序进行诊断。

  1. 登录到 Azure 门户。

  2. 转至 Azure Spring Apps 实例。

  3. 在导航窗格中,选择“诊断并解决问题”。

  4. 选择“网络”。

    Screenshot of the Azure portal showing the Diagnose and solve problems page with the Networking troubleshooting category highlighted.

查看诊断报告

选择“网络”类别后,可以查看与特定于虚拟网络注入的 Azure Spring Apps 实例的网络相关的两个问题:“DNS 解析”和“所需出站流量”。

Screenshot of the Azure portal showing the Network troubleshooting page for diagnose and solve problems.

选择目标问题以查看诊断报告。 将显示诊断摘要,例如:

  • “资源已删除。”
  • “资源未部署在你自己的虚拟网络中”。

某些结果包含相关文档。 不同的子网会分别显示结果。

DNS 解析

如果选择“DNS 解析”,结果会指示应用程序是否存在 DNS 问题。 以下示例显示了正常应用程序的示例:

  • “DNS 问题已解决,子网 'subnet01' 中没有问题”。
  • “DNS 问题已解决,子网 'subnet02' 中没有问题”。

以下诊断报告示例指示应用程序的运行状况未知。 报告时间范围不包括报告运行状况时的时间。 假设上下文结束时间为 2021-03-03T04:20:00Z。 “DNS 解析表呈现结果”中的最新时间戳是 2021-03-03T03:39:00Z2021-03-03T03:39:00Z,即前一天。 运行状况检查日志可能由于网络被阻止而未发出。

未知的运行状况结果包含相关文档。 可以选择左尖括号以查看下拉显示。

Screenshot of the Azure portal showing the Summary and Troubleshooting suggestions for a DNS Resolution issue in diagnose and solve problems.

如果错误地配置了专用 DNS 区域记录集,则会显示一条严重的结果,例如“Failed to resolve the Private DNS in subnet xxx”。

在“DNS 解析表呈现”中,会显示详细消息信息,你可以从中检查配置。

如果 VNET 使用自定义 DNS 服务器而非默认 Azure 提供的 DNS 服务器,请将 DNS 服务器配置为将未解析的 DNS 查询转发给 168.63.129.16。 Azure 递归解析程序使用此 IP 地址解析请求。 如果不使用 Azure 递归解析程序,Azure Spring Apps 环境将无法按预期运行。 有关详细信息,请参阅 Azure 虚拟网络中资源的名称解析使用自己的 DNS 服务器的名称解析部分

所需出站流量

如果选择“所需出站流量”,结果会指示应用程序是否存在出站流量问题。 以下示例是正常应用程序的结果:

  • *“所需出站流量已解析,子网 'subnet01' 中没有问题。”
  • *“所需出站流量已解析,子网 'subnet02' 中没有问题。”

如果由于 NSG 或防火墙规则而阻止了任何子网,但你尚未阻止日志,则终结点检查故障会显示在问题的摘要中。 以下目标终结点失败,因为未匹配任何规则:

  • http://clr3.gigicert.com
  • http://mscrl.microsoft.com
  • http://crl.microsoft.com

可以检查你是否忽略了任何客户责任。 有关详细信息,请参阅在虚拟网络中运行 Azure Spring Apps 的客户责任

如果在 30 分钟内未显示所需出站流量表呈现的数据,则结果为“health status unknown”。 网络可能被阻止,或者日志服务已关闭。