Azure消费数据API

参考Get consumption data for an Azure subscription

资源使用(Resource Usage)

查询参数

参数名称 必须/可选 说明
reportedStartTime 和 reportedEndTime 必选 Reported Time 代表了资源的使用在Azure 计费系统中的记录的时间。由于Azure有多个数据中心,就一定会存在资源实际消耗时间和资源使用汇报时间的延迟,所以调用方需要有一种预见性的方式来获取一次订阅指定时间段内所有的使用事件,因此需要调用方根据Reported Time来查询来保证调用方获取了billing系统中一个特定的时间段内所有的消费事件。虽然查询是通过Reported Time查询的,但是根据资源的使用时间聚合的
aggregationGranularity 可选 聚合粒度。可选。取值范围Daily或Hourly,默认值Daily。跟据不同的值返回不同粒度的值
showDetails 可选 取值范围:true 或false,默认值:true。这个参数用来设定是否获取实例级别的详细使用数据,比如你有3个website(web1、web2、web2),缺省会获取3条website的消费数据。如果showDetails =false,我们会拿到单条website 的消费数据,也就就是说会把同一个subscriptionId、meterId、usageStartTime、usageEndTime聚合成单条数据
continuationToken 可选 continuationToken从前一次调用的返回中获取,这是对一个大数据集合查询过程的一个bookmark,如果没这个参数就会从数据开始的地方开始获取

返回值

名称 说明
Id 使用量合计的唯一ID
name 使用量合计的名称
subscriptionId Azure用户的订购ID
meterId 资源唯一ID,也就是ResourceID
usageStartTime 归属时间段的开始时间
usageEndTime 归属时间段的开始时间
Quantity 使用量 ,这个地方应该有很多的扩展不止Quantity 一个字段
Unit 单位
meterName 消费资源的名称
meterCategory 消费资源的分类
meterSubCategory 消费资源的子分类
meterRegion 消费资源的region
infoFields 实例信息的key/value信息(遗留格式)
instanceData 实例信息的key/value信息,保存了resourceUri 、tags、location、扩展信息(OS版本、Image类型......) 、partNumber(唯一的namespace用来标识azure的三方市场)、orderNumber(唯一的ID标志第三方的订单识别码)

返回样例

输入:https://management.azure.com/subscriptions/{subscription-Id}/providers/Microsoft.Commerce/UsageAggregates?api-version=2015-06-01-preview&reportedStartTime=2014-05-01T00%3a00%3a00%2b00%3a00&reportedEndTime=2015-06-01T00%3a00%3a00%2b00%3a00&aggregationGranularity=Daily&showDetails=false

这个查询aggregationGranularity=Daily&showDetails=false

{
    "value": [
        {
            "id": "/subscriptions/f68815e6-3c41-45ef-bbd8-5f83303c396b/providers/Microsoft.Commerce/UsageAggregates/Daily_BRSDF_20140501_0000",
            "name": "Daily_BRSDF_20140501_0000",
            "type": "Microsoft.Commerce/UsageAggregate",
            "properties": {
                "subscriptionId": "f68815e6-3c41-45ef-bbd8-5f83303c396b",
                "usageStartTime": "2015-03-03T00:00:00+00:00",
                "usageEndTime": "2015-03-04T00:00:00+00:00",
                "meterName": "Standard IO – Page Blob/Disk (GB)",
                "meterCategory": "Storage",
                "meterSubCategory": "Geo Redundant",
                "unit": "GB",
                "meterId": "0e9d0c9b-ab6d-4312-9c7e-3794e22af9c4",
                "infoFields": {
                },
                "quantity": 0.057865
            }
        },
…

这个查询showDetails=true 在infoFields中提供了一些详细信息


下面这个格式返回了新的响应格式,提供了“instanceData”,这个instance-level的明细数据包括了资源URI、tag等信息

``` json

{
  "value": [
        {
      "id": "/subscriptions/d657c399-e17c-405d-859e-9f2efb6462e5/providers/Microsoft.Commerce/UsageAggregates/Daily_BRSDT_20150515_0000",
      "name": "Daily_BRSDT_20150515_0000",
      "type": "Microsoft.Commerce/UsageAggregate",
      "properties": {
        "subscriptionId": "d657c399-e17c-405d-859e-9f2efb6462e5",
        "usageStartTime": "2015-05-15T00:00:00+00:00",
        "usageEndTime": "2015-05-16T00:00:00+00:00",
        "instanceData": "{\"Microsoft.Resources\":{\"resourceUri\":\"/subscriptions/d657c399-e17c-405d-859e-9f2efb6462e5/resourceGroups/moinakrg/providers/Microsoft.Storage/storageAccounts/moinakstorage\",\"location\":\"West US\",\"tags\":{\"department\":\"hr\"}}}",
        "meterName": "Storage Transactions (in 10,000s)",
        "meterCategory": "Data Management",
        "unit": "10,000s",
        "meterId": "964c283a-83a3-4dd4-8baf-59511998fe8b",
        "infoFields": {

        },
        "quantity": 9.8390
      }
    },
    {
      "id": "/subscriptions/d657c399-e17c-405d-859e-9f2efb6462e5/providers/Microsoft.Commerce/UsageAggregates/Daily_BRSDT_20150515_0000",
      "name": "Daily_BRSDT_20150515_0000",
      "type": "Microsoft.Commerce/UsageAggregate",
      "properties": {
        "subscriptionId": "d657c399-e17c-405d-859e-9f2efb6462e5",
        "usageStartTime": "2015-05-15T00:00:00+00:00",
        "usageEndTime": "2015-05-16T00:00:00+00:00",
        "instanceData": "{\"Microsoft.Resources\":{\"resourceUri\":\"/subscriptions/d657c399-e17c-405d-859e-9f2efb6462e5/resourceGroups/moinakrg/providers/Microsoft.Storage/storageAccounts/moinakstorage\",\"location\":\"West US\",\"tags\":{\"department\":\"hr\"}}}",
        "meterName": "Data Transfer In (GB)",
        "meterRegion": "Zone 1",
        "meterCategory": "Networking",
        "unit": "GB",
        "meterId": "32c3ebec-1646-49e3-8127-2cafbd3a04d8",
        "infoFields": {

        },
        "quantity": 0.000066
      }
    }, 
…

Resource RateCard

用途

查询当前订阅中资源/计量的metadata以及相关的价格。原文地址:Get price and metadata information for resources used in an Azure subscription 就是提供客户当前拥有的资源的会按什么样规则收钱(可以用来做价格预测),不是已经消费的金额。这个api我们是没有的。

查询参数

参数名称 必选/可选 说明
OfferDurableId 必选 这个OfferDurableId 由“MS-AZR-”+OfferID,Microsoft Azure Offer Details 这个里面有完整的OfferID列表
Currency 必选 需要提供的资源单价的货币类型,例如USD
Locale 必选 需要资源的metadata本地化的文字,例如en-US
RegionInfo offer购买的ISO Code

返回值

名称 说明
Credit 能提供的信用额度额度
Currency 货币单位
EffectiveDate 生效时间
ExcludedMeterIds 排除的资源ID
IncludedQuantity 免费数量,超过这个数量开始收费
IsTaxIncluded 是否含税
Locale 本地化
MeterCategory 计量分类
MeterId 资源ID
MeterName 计量名称
MeterRates 计量率。The list of key/value pairs for the meter rates, in the format “key”:”value” where key = the meter quantity, and value = the corresponding price.
MeterRegion 计量region
MeterSubCategory 计量的子分类
MeterStatus 计量状态 "Active" or "Deprecated".
Name The name of the Azure offer term, e.g., “Monetary Credit”.
ServiceRegion 所在的region
Tags Provides additional meter data.“Third Party” indicates a meter with no discount. Blanks indicate First Party.
TieredDiscount 阶梯优惠
Unit 单位