在Azure Monitor工作簿中针对Resource Manager创建查询时出现错误消息

问题描述

我正在尝试将查询添加到Azure Monitor的工作簿中,以查询Azure订阅的当月使用成本。

构造查询并运行它时,收到以下错误消息:

BadRequest:查询定义无效,数据集无效或未提供。

但是,此REST API调用的文档特别指出,正文的datasets属性不是必需的。

文档:https://docs.microsoft.com/en-us/rest/api/cost-management/query/usage

文档截图:

enter image description here

以下是我的查询在工作簿中的屏幕截图:

enter image description here

问题:当文档未能正确解释该请求时,如何正确构造此请求的正文?

解决方法

实际上,此api-doc提供了许多示例,您可以单击任何示例以获取请求正文详细信息。

BillingAccountQuery-Modern为例,请求正文如下(您可以根据需要对其进行修改):

{
  "type": "Usage","timeframe": "MonthToDate","dataset": {
    "granularity": "Daily","filter": {
      "and": [
        {
          "or": [
            {
              "dimension": {
                "name": "ResourceLocation","operator": "In","values": [
                  "East US","West Europe"
                ]
              }
            },{
              "tag": {
                "name": "Environment","values": [
                  "UAT","Prod"
                ]
              }
            }
          ]
        },{
          "dimension": {
            "name": "ResourceGroup","values": [
              "API"
            ]
          }
        }
      ]
    }
  }
}