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

如何在Grafana中监控Azure API Management各API的响应时间

我之前刚好做过把Azure APIM指标集成到Grafana监控单个API响应时间的操作,步骤亲测可行,给你详细拆解一下:

步骤1:先搞定Azure侧的诊断配置

要让Grafana能拿到APIM的指标,首先得把APIM的运行数据导出到Log Analytics(推荐,查询灵活性更高)或者Azure Monitor Metrics:

  • 登录Azure门户,找到你的APIM实例
  • 进入左侧菜单的诊断设置,点击「添加诊断设置」
  • 填写设置名称,然后勾选要采集的日志/指标,重点选GatewayRequests(这个日志里包含了每个请求的响应时间、API名称等关键字段)
  • 目标选择Log Analytics工作区,选一个已有的或者新建一个,保存配置
步骤2:在Grafana中配置Azure Monitor数据源

接下来要让Grafana能连接到Azure的数据源:

  • 打开你的Grafana实例,点击左侧菜单的Configuration > Data sources
  • 点击「Add data source」,搜索并选择Azure Monitor
  • 配置认证信息:推荐用服务主体(Service Principal),需要在Azure AD里创建一个拥有Log Analytics读取权限的SP,填入租户ID、客户端ID、客户端密钥
  • 选择对应的Azure订阅、资源组,点击「Save & test」确认连接成功
步骤3:创建单个API响应时间的监控面板

这是核心步骤,通过Kusto查询精准过滤目标API的响应时间:

  • 进入Grafana仪表盘,点击「Add panel」
  • 在查询编辑器里,选择刚才配置的Azure Monitor数据源,切换到Logs模式
  • 输入Kusto查询语句,替换成你的API名称:
GatewayRequests
| where ApiName == "你的目标API名称"
| summarize avg(DurationMs) by bin(TimeGenerated, 1m)  // 按1分钟聚合平均响应时间
| sort by TimeGenerated asc
  • 可视化类型选择Time series或者Graph,调整X轴为时间、Y轴为响应时间(毫秒)
  • 还可以添加变量筛选器,比如让面板支持切换不同的API,提升灵活性
额外优化小技巧
  • 如果想监控更精准的用户体验(比如P95/P99响应时间),把查询里的avg(DurationMs)改成percentile(DurationMs, 95)即可
  • 可以给面板添加告警规则,当响应时间超过预设阈值时触发邮件/Teams通知
  • 如果用了APIM自托管网关,要确保网关的诊断设置也配置正确,数据能同步到Log Analytics

内容的提问来源于stack exchange,提问作者Smruti Ranjan Behera

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.07 08:12:37