你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Query - Usage By External Cloud Provider Type

查询定义的外部云提供程序类型的使用情况数据。

POST https://management.azure.com/providers/Microsoft.CostManagement/{externalCloudProviderType}/{externalCloudProviderId}/query?api-version=2023-11-01

URI 参数

名称 必需 类型 说明
externalCloudProviderId
path True

string

对于链接帐户,这可以是“{externalSubscriptionId}”,对于用于维度/查询操作的合并帐户,可以是“{externalBillingAccountId}”。

externalCloudProviderType
path True

externalCloudProviderType

与维度/查询操作关联的外部云提供程序类型。 这包括链接帐户的“externalSubscriptions”和合并帐户的“externalBillingAccounts”。

api-version
query True

string

要用于此操作的 API 版本。

请求正文

名称 必需 类型 说明
dataset True

QueryDataset

具有此查询中数据的定义。

timeframe True

TimeframeType

为查询拉取数据的时间范围。 如果是自定义的,则必须提供特定的时间段。

type True

ExportType

查询的类型。

timePeriod

QueryTimePeriod

具有为查询拉取数据的时间段。

响应

名称 类型 说明
200 OK

QueryResult

没问题。 请求已成功。

Other Status Codes

ErrorResponse

描述操作失败原因的错误响应。

安全性

azure_auth

Azure Active Directory OAuth2 流。

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

名称 说明
user_impersonation 模拟用户帐户

示例

ExternalBillingAccountQueryList
ExternalSubscriptionsQuery

ExternalBillingAccountQueryList

Sample Request

POST https://management.azure.com/providers/Microsoft.CostManagement/externalBillingAccounts/100/query?api-version=2023-11-01

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

Sample Response

{
  "id": "providers/Microsoft.CostManagement/externalBillingAccounts/100/query/6dc7b06a-d90a-4df5-b655-ce6cf1c0814d",
  "name": "6dc7b06a-d90a-4df5-b655-ce6cf1c0814d",
  "type": "Microsoft.CostManagement/query",
  "properties": {
    "nextLink": null,
    "columns": [
      {
        "name": "PreTaxCost",
        "type": "Number"
      },
      {
        "name": "ServiceName",
        "type": "String"
      },
      {
        "name": "Currency",
        "type": "String"
      }
    ],
    "rows": [
      [
        0,
        "abc db",
        "USD"
      ],
      [
        30.2572751438,
        "abc compute cloud",
        "USD"
      ],
      [
        0.07675760200000002,
        "abc file system",
        "USD"
      ],
      [
        50.43096419040001,
        "abc elasticache",
        "USD"
      ]
    ]
  }
}

ExternalSubscriptionsQuery

Sample Request

POST https://management.azure.com/providers/Microsoft.CostManagement/externalSubscriptions/100/query?api-version=2023-11-01

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

Sample Response

{
  "id": "providers/Microsoft.CostManagement/externalSubscriptions/100/query/d99477af-7510-40ee-aca2-e59bdca0d10d",
  "name": "d99477af-7510-40ee-aca2-e59bdca0d10d",
  "type": "Microsoft.CostManagement/query",
  "properties": {
    "nextLink": null,
    "columns": [
      {
        "name": "PreTaxCost",
        "type": "Number"
      },
      {
        "name": "UsageDate",
        "type": "Number"
      },
      {
        "name": "Currency",
        "type": "String"
      }
    ],
    "rows": []
  }
}

定义

名称 说明
ErrorDetails

错误的详细信息。

ErrorResponse

错误响应指示服务无法处理传入请求。 错误消息中提供了原因。

某些错误响应:

  • 429 TooManyRequests - 请求受到限制。 等待“x-ms-ratelimit-microsoft.consumption-retry-after”标头中指定的时间后重试。

  • 503 ServiceUnavailable - 服务暂时不可用。 等待“Retry-After”标头中指定的时间后重试。

ExportType

查询的类型。

externalCloudProviderType

与维度/查询操作关联的外部云提供程序类型。 这包括链接帐户的“externalSubscriptions”和合并帐户的“externalBillingAccounts”。

FunctionType

要使用的聚合函数的名称。

GranularityType

预测中行的粒度。

QueryAggregation

要用于查询的聚合表达式。

QueryColumn

QueryColumn 属性

QueryColumnType

导出中列的类型。

QueryComparisonExpression

要用于查询的比较表达式。

QueryDataset

查询中存在的数据的定义。

QueryDatasetConfiguration

查询中数据集的配置。

QueryDefinition

查询的定义。

QueryFilter

要用于导出的筛选表达式。

QueryGrouping

要用于查询的按表达式分组。

QueryOperatorType

用于比较的运算符。

QueryResult

查询结果。 它包含分组和聚合下列出的所有列。

QueryTimePeriod

拉取查询数据的开始和结束日期。

TimeframeType

为查询拉取数据的时间范围。 如果是自定义的,则必须提供特定的时间段。

ErrorDetails

错误的详细信息。

名称 类型 说明
code

string

错误代码。

message

string

指示操作失败原因的错误消息。

ErrorResponse

错误响应指示服务无法处理传入请求。 错误消息中提供了原因。

某些错误响应:

  • 429 TooManyRequests - 请求受到限制。 等待“x-ms-ratelimit-microsoft.consumption-retry-after”标头中指定的时间后重试。

  • 503 ServiceUnavailable - 服务暂时不可用。 等待“Retry-After”标头中指定的时间后重试。

名称 类型 说明
error

ErrorDetails

错误的详细信息。

ExportType

查询的类型。

名称 类型 说明
ActualCost

string

AmortizedCost

string

Usage

string

externalCloudProviderType

与维度/查询操作关联的外部云提供程序类型。 这包括链接帐户的“externalSubscriptions”和合并帐户的“externalBillingAccounts”。

名称 类型 说明
externalBillingAccounts

string

externalSubscriptions

string

FunctionType

要使用的聚合函数的名称。

名称 类型 说明
Sum

string

GranularityType

预测中行的粒度。

名称 类型 说明
Daily

string

QueryAggregation

要用于查询的聚合表达式。

名称 类型 说明
function

FunctionType

要使用的聚合函数的名称。

name

string

要聚合的列的名称。

QueryColumn

QueryColumn 属性

名称 类型 说明
name

string

列的名称。

type

string

列的类型。

QueryColumnType

导出中列的类型。

名称 类型 说明
Dimension

string

成本数据的维度。

TagKey

string

与成本数据关联的标记。

QueryComparisonExpression

要用于查询的比较表达式。

名称 类型 说明
name

string

要用于比较的列的名称。

operator

QueryOperatorType

用于比较的运算符。

values

string[]

要用于比较的值数组

QueryDataset

查询中存在的数据的定义。

名称 类型 说明
aggregation

<string,  QueryAggregation>

在查询中使用的聚合表达式字典。 字典中每个项的键是聚合列的别名。 查询最多可以有 2 个聚合子句。

configuration

QueryDatasetConfiguration

具有导出中数据的配置信息。 如果提供聚合和分组,将忽略配置。

filter

QueryFilter

在查询中使用的筛选表达式。 请参阅查询 API REST 文档,了解如何正确设置筛选器的格式。

granularity

GranularityType

查询中行的粒度。

grouping

QueryGrouping[]

在查询中使用的按表达式分组的数组。 查询最多可以有 2 个 group by 子句。

QueryDatasetConfiguration

查询中数据集的配置。

名称 类型 说明
columns

string[]

要包含在查询中的列名的数组。 允许任何有效的查询列名。 如果未提供,则查询将包括所有列。

QueryDefinition

查询的定义。

名称 类型 说明
dataset

QueryDataset

具有此查询中数据的定义。

timePeriod

QueryTimePeriod

具有为查询拉取数据的时间段。

timeframe

TimeframeType

为查询拉取数据的时间范围。 如果是自定义的,则必须提供特定的时间段。

type

ExportType

查询的类型。

QueryFilter

要用于导出的筛选表达式。

名称 类型 说明
and

QueryFilter[]

逻辑“AND”表达式。 必须至少有 2 个项。

dimensions

QueryComparisonExpression

具有维度的比较表达式

or

QueryFilter[]

逻辑“OR”表达式。 必须至少有 2 个项。

tags

QueryComparisonExpression

具有标记的比较表达式

QueryGrouping

要用于查询的按表达式分组。

名称 类型 说明
name

string

要分组的列的名称。

type

QueryColumnType

具有要分组的列的类型。

QueryOperatorType

用于比较的运算符。

名称 类型 说明
In

string

QueryResult

查询结果。 它包含分组和聚合下列出的所有列。

名称 类型 说明
eTag

string

资源的 ETag。

id

string

资源 ID。

location

string

资源的位置。

name

string

资源名称。

properties.columns

QueryColumn[]

列数组

properties.nextLink

string

指向下一页结果的链接 (url) 。

properties.rows

Rows[]

行数组

sku

string

资源的 SKU。

tags

object

资源标记。

type

string

资源类型。

QueryTimePeriod

拉取查询数据的开始和结束日期。

名称 类型 说明
from

string

要从中拉取数据的开始日期。

to

string

要将数据拉取到的结束日期。

TimeframeType

为查询拉取数据的时间范围。 如果是自定义的,则必须提供特定的时间段。

名称 类型 说明
BillingMonthToDate

string

Custom

string

MonthToDate

string

TheLastBillingMonth

string

TheLastMonth

string

WeekToDate

string