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

如何通过Azure Monitor REST API单次请求获取多聚合指标值?

解决Azure Monitor REST API同时获取多聚合指标的问题

先把参数格式改对

你得确保请求里的aggregation参数是逗号分隔无空格的多聚合值,比如:

aggregation=average,minimum,maximum

很多时候只返回average,就是因为参数写错了——比如加了空格,或者格式不对。

确认指标支持这些聚合方式

不是所有Service Bus指标都同时支持average、minimum、maximum这三种聚合。比如有些计数类指标只支持total。你可以:

  • 去Azure门户里看该指标的聚合选项,能选的就是支持的类型
  • 调用Azure Monitor的metric definitions API,查询目标指标支持的聚合列表

完整请求示例

以Service Bus队列的ActiveMessages指标为例,正确的请求URL应该是这样(替换占位符):

GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/queues/{queueName}/providers/microsoft.insights/metrics?api-version=2023-10-01&metricnames=ActiveMessages&aggregation=average,minimum,maximum&interval=PT1H

注意interval要设置合理的时间间隔,不然可能没有对应聚合数据。

正确响应格式

请求没问题的话,响应里的data部分就会包含所有指定的聚合字段,和你期望的一致:

"data": [
    {
      "timeStamp": "2021-04-20T09:00:00Z",
      "average": 7,
      "minimum": 7,
      "maximum": 7
    }
]

常见坑点排查

  • 检查Authorization令牌是否有效,权限是否足够(至少需要Monitoring Reader角色)
  • 确认你指定的指标确实支持这三种聚合方式
  • aggregation参数里绝对不能加空格,必须是纯逗号分隔的字符串

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 15:33:11