使用计费API以编程方式生成Azure账单时要使用的日期



有两种类型的退单报告数据时间:

  1. 处理日期:也称为报告日期。这是日期在Azure系统中报告该数据
  2. 使用开始和结束日期:这是在Azure中使用资源的实际日期

例如,你在Azure中创建了一个虚拟机,它在4月8日一直运行了5个小时,直到午夜。现在,Azure在8日只报道了其中的2个小时。剩下的3个小时将于4月9日公布。所以在这种情况下:

  • 前2小时的处理或报告日期为4月8日。和使用日期也是4月8日
  • 对于剩余的3小时:处理或报告日期为4月9日。但使用日期仍然是4月8日,因为这些时间的实际使用发生在4月8号

现在,在生成账单时,没有要使用的日期文档。我有三种选择及其组合:

  1. 处理或报告日期
  2. 使用开始日期
  3. 使用结束日期

从理论上讲,使用使用日期生成账单是有意义的。但当我从https://account.windowsazure.com手动生成,并将其与通过API生成的账单进行比较,似乎账单是由报告日期在Azure中生成的。

询问:您能检查并确认我在生成账单报告时应该使用报告日期吗?

我相信您也可以使用报告日期来生成账单。Afaik Microsoft生成的账单也基于报告日期。我还在我的订阅中测试了几个月,并与API的账单数据进行了对比,发现这是真的。

我相信documentation对此非常明确。

获取数据的请求URL为:

_https://management.azure.com/subscriptions/{subscription Id}/providers/Microsoft.Commerce/UsageAggregate?api版本={api版本}&reportedStartTime={dateTimeOffset值}&reportedEndTime={dateTimeOffset值}&aggregationGranularity={粒度值}&showDetails={showdetail布尔值}&continuationToken={令牌值}

这意味着在获取数据时,应该使用Reported Date/Time

这是你得到的回复机构:

{
    "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
            }
        },
…

返回usage dates

你需要意识到的一件事是,数据报告的时间会有一些延迟。因此,第8天的使用数据可以在第8天、第9天、第10天甚至更晚报告。请阅读Frequently Asked Questions以了解更多关于这些日期的信息。

最新更新