你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
使用 RefString 排查 Azure Front Door 问题
有关了解和使用 RefStrings 诊断和解决 Azure Front Door 问题的指南。
先决条件
- 你必须具有 Azure Front Door 配置文件。 若要创建配置文件,请参阅创建 Azure Front Door 配置文件。
什么是 RefString?
RefString 是由 Azure Front Door 追加到每个请求的 HTTP 响应头的短字符串。 它提供有关请求的处理方式的详细信息,包括状态点 (POP) 和后端状态。
RefString 可帮助排查和解决 Azure Front Door 的问题,例如缓存未命中、路由错误、后端故障和延迟问题。 可以通过分析请求的 RefString 来确定根本原因并采取适当的措施来修复它。
注意
如果遇到了 Microsoft 服务的错误页,则它已包含生成错误页的请求的 RefString。 在这种情况下,可以直接跳到诊断步骤。
如何收集 RefString
若要收集 RefString,需要捕获请求的 HTTP 响应头,并查找名为 X-Azure-Ref 的标头。此标头包含以 Base64 编码的 RefString。 可以使用不同的方法来捕获 HTTP 响应头,具体取决于你的偏好和情况。 下面是有关如何从各种浏览器和应用程序获取 RefString 的一些示例:
按
F12
或Ctrl+Shift+I
打开浏览器的开发人员工具。转到“网络”选项卡。
刷新页面或执行触发请求的操作。
在列表中找到特定请求,并在响应头部分找到 X-Azure-Ref 标头。
复制 X-Azure-Ref 标头的值,以便用于 Azure 门户中的 RefString 故障排除工具。
有关详细信息,请参阅检查网络活动 - Microsoft Edge 开发人员文档。
关于如何从 Microsoft Edge 浏览器获取 RefString 的示例:
如何将 RefString 用于某些故障排除工具
Azure Front Door 使用 RefString 来管理 4xx 和 5xx 错误。 以下是将诊断工具与 RefString 配合使用以跟踪和诊断连接问题的步骤:
导航到你的 Azure Front Door 配置文件。
选择“诊断和解决问题”菜单。
向下滚动并选择“常见问题”部分下的“连接”。
在“你遇到了什么问题?”框中,选择“选择问题子类型”,然后在下拉菜单中选择“4xx 和 5xx 错误”,然后选择“下一步”。
在“4xx 和 5xx 错误”部分中的框中输入你的 RefString。 在“跟踪引用 - RefString”字段下,输入通过请求给你的 Restring。
最后,选择“运行诊断”以识别问题的原因,它会对故障进行解释(如果是已知问题)。
显示问题的结果示例:
注意
诊断功能可能需要最多 15 分钟来提供结果。 请耐心等待该过程完成,然后再采取进一步的行动。
备用选项
如果选择不使用诊断工具,则可以在提交支持工单时加入 RefString。 此外,还可以启用“访问日志”功能,以直接在 Azure 门户中接收 RefString 数据的更新。 有关跟踪引用和访问日志参数的详细信息,请参阅在 Azure Front Door 中监视指标和日志。
本文重点介绍访问日志中的特定字段,这些字段有助于识别各种类型的错误:
缓存未命中:RefString 指示请求是否是从缓存提供的,并在不是时提供原因。
示例:NOCACHE 表示请求不符合缓存条件,MISS 表示不存在有效的缓存条目,而 STALE 表示缓存条目已过期。
路由错误:RefString 可以揭示请求是否已正确路由到后端以及原因。
示例:FALLBACK 表示由于主要后端问题而重新路由,而 OVERRIDE 表示根据路由规则发送到备用后端。
后端故障:RefString 指示是否成功传送到后端,并解释任何问题。
示例:TIMEOUT 表示响应耗时太长,CONNFAIL 表示连接失败,ERROR 表示来自后端的错误响应。
延迟问题:RefString 详细说明了 Azure Front Door 的处理时间和阶段持续时间。
示例:DURATION 显示总处理时间,RTT 显示往返时间,TTFB 显示从后端接收第一个字节所花费的时间。
后续步骤
- 若要详细了解如何应对常见问题,请参阅 Front Door 故障排除问题。
- 有关常见问题的解答,请参阅 Azure Front Door FAQ。