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

如何在Azure中集中记录并展示APIM各类500错误及发生频率?

在Azure中集中查看APIM后端500错误类型及频率的实现方式

1. Azure Monitor + Log Analytics(推荐方案)

  • 开启APIM诊断设置:在APIM资源的「诊断设置」中,勾选将GatewayLogs发送到Log Analytics工作区,确保日志包含响应体数据。
  • 编写Kusto查询统计错误:在Log Analytics工作区的「日志」页面,执行以下查询解析后端响应体,分组统计不同500错误的发生次数:
GatewayLogs
| where ResponseStatusCode == 500
| extend ErrorDetails = parse_json(ResponseBody).status
| where ErrorDetails.code == 500
| summarize ErrorCount = count() by ErrorDetails.message
| sort by ErrorCount desc
  • 可视化与固定:将查询结果保存为「日志查询」,并添加到Azure仪表板,实现实时查看错误分布。

2. APIM内置Analytics面板

  • 配置日志收集:确保APIM已将日志发送到Azure Monitor(同方案1的诊断设置)。
  • 自定义Analytics视图:进入APIM资源的「Analytics」页面,切换到「自定义」标签,添加新维度筛选:
    • 选择「响应体」作为数据源,解析status.message字段作为分组维度
    • 筛选响应状态码为500,统计维度的出现次数
  • 保存视图后,可直接在APIM界面查看各类500错误的频率分布。

3. Azure Workbooks

  • 创建自定义工作簿:在Azure门户搜索「Workbooks」,新建空白工作簿,添加「Log Analytics」数据源。
  • 导入统计查询:使用方案1中的Kusto查询,将结果可视化设置为条形图或饼图,直观展示错误占比。
  • 添加交互控件:可添加时间范围选择器、环境筛选器等,灵活查看不同时段的错误数据,最后保存工作簿供团队共享。

4. 补充:结合Azure Alert Rules(异常告警)

  • 基于Log Analytics的查询创建警报规则,当特定500错误(如"Internal Error due to database timeout")的发生次数超过阈值时,触发邮件/Teams通知,同时可在警报规则的「操作组」中关联日志查询,附带错误统计详情。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 13:23:16