You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Web应用已停止时Azure Health Service仍返回可用,如何获取真实运行状态

问题原因与调用误区排查

Azure Health Service API默认仅上报Azure平台层面的资源运行状态,不会感知应用自身的业务运行异常,你遇到的停止应用后仍返回可用属于典型的使用场景匹配错误,首先排查API调用的常见错误点:

  • 确认调用的是单资源级别的Resource Health API,而非全局服务健康API:全局API仅同步Azure区域级别的服务故障,完全不会上报单个应用的运行状态
  • 检查请求中传入的resourceId是否与停止的Web应用完全匹配,避免误匹配到部署槽、同资源组其他应用的ID
  • 验证查询时间窗口参数是否覆盖应用停止时间:API默认仅返回最近10分钟的状态数据,需通过$filter参数自定义时间范围才能查询到30分钟前的状态变更
真实运行状态获取方案

1. 适配Azure官方的应用健康检测逻辑

  • 开启App Service内置健康检查功能:在Web应用配置页指定业务探活路径(如/health),平台会定期发起探测,连续失败后会将资源状态同步到Resource Health API,此时调用API即可拿到真实的异常状态
  • 直接请求App Service内置监控端点 https://<你的应用名>.azurewebsites.net/healthcheck,无需额外开发即可拿到应用进程级别的运行状态

2. 仪表板侧新增主动探测逻辑

这是准确率最高、实时性最好的方案,不受Azure平台状态同步延迟影响:

  • 定期发起HTTP/HTTPS请求到Web应用的业务探活接口,根据返回状态码(2xx判定为正常,4xx/5xx、超时判定为异常)判断运行状态
  • 搭配TCP端口探测,检测Web应用对应80/443端口的连通性,避免HTTP规则拦截导致的误判

3. 调用Azure Monitor指标API做辅助判断

查询Web应用的运行指标做交叉验证:

  • 若过去15分钟内Requests指标值为0,同时应用本该有正常业务流量,即可判定应用处于异常停止状态
  • 配合CPU Time、Process Memory指标判断应用进程是否处于正常运行状态

内容的提问来源于stack exchange,提问作者Mangesh Gaherwar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.17 07:06:07