使用Node.js后端,如何检查Azure Container App运行状态并创建宕机告警?
检查Azure Container App运行状态及配置宕机告警
一、检查Azure Container App运行状态
1. Azure门户直观查看
- 登录Azure门户,定位到你的Container App
- 左侧导航栏概述页里,直接看状态字段:正常运行时显示运行中,异常会显示停止、故障等状态
- 切换到修订版本页,可查看每个修订实例的具体状态,包括实例数量、重启次数等细节
2. Azure CLI命令查询
用CLI快速获取运行状态:
az containerapp show --name <你的容器应用名> --resource-group <资源组名> --query properties.status
返回Running即为正常,Stopped或Failed表示存在异常。
查询实例状态详情:
az containerapp revision list --name <你的容器应用名> --resource-group <资源组名> --query "[].{Name:name, Status:properties.status, Replicas:properties.replicas}"
3. Azure Monitor指标实时监控
- 进入Container App的监控>指标页面
- 重点关注以下指标:
- 容器实例数:正常状态下应大于0,且与配置的副本数一致
- 重启次数:异常场景下该数值会持续上涨
- CPU/内存使用率:资源耗尽可能导致应用不可用
二、配置宕机告警
1. 基于指标的基础宕机告警
- 进入Container App的监控>告警页,点击创建>警报规则
- 信号逻辑设置:
- 信号类型选指标,信号名称选择容器实例数
- 条件设为小于,阈值填1(实例数为0时触发),聚合类型选平均,时间粒度设为5分钟
- 操作组配置:
- 新建或选用已有操作组,设置通知方式:邮件、短信、Webhook均可,比如直接发送告警邮件到运维团队
- 告警细节设置:为告警规则命名,添加描述,将严重级别设为严重
2. 日志告警(应对应用层内部故障)
如果容器运行正常但Node.js服务内部崩溃(如代码报错但容器未重启),需通过日志配置告警:
- 确保Container App已配置Log Analytics工作区用于收集日志
- 进入监控>日志页,编写Kusto查询筛选错误日志:
ContainerAppConsoleLogs_CL | where ContainerAppName_s == "<你的容器应用名>" | where Log_s contains "Error" or Log_s contains "Crash" | count
- 将该查询保存为告警规则,当计数大于0时触发通知
3. 健康检查联动告警
若你的Node.js应用配置了就绪/存活探针:
- 进入Container App的配置>容器页,确认健康检查规则配置正确
- 基于健康状态实例数指标创建告警,当健康实例数少于配置的副本数时触发通知
内容的提问来源于stack exchange,提问作者Kiquenet
相关产品推荐
相关产品推荐

