Какую дату использовать при программном создании счета Azure с помощью API выставления счетов.

Существует два типа данных отчета о возвратных платежах:

  1. Дата обработки. Также известна как Отчетная дата. Это дата, когда данные сообщаются в системе Azure.
  2. Дата начала и окончания использования: это фактическая дата, когда ресурс использовался в Azure.

Например. Вы создаете виртуальную машину в Azure, и она работала в течение 5 часов 8 апреля до полуночи. Теперь в Azure сообщается только о 2 из этих часов 8 числа. А оставшиеся 3 часа приходятся на 9 апреля. Итак, в этом случае:

  • Для первых 2 часов дата обработки или отчета — 8 апреля. И дата использования тоже 8 апреля.
  • Для оставшихся 3 часов: дата обработки или отчета — 9 апреля. Но дата использования по-прежнему 8 апреля, так как фактическое использование этих часов произошло 8 апреля.

Теперь при формировании счета нет документации, какие даты использовать. У меня есть три варианта и их комбинации:

  1. Дата обработки или отчетная дата
  2. Дата начала использования
  3. Дата окончания использования

Теоретически имеет смысл формировать счет, используя даты использования. Но когда я вытаскиваю фактический счет с https://account.windowsazure.com вручную и сравниваю его с создается с помощью API, кажется, что счет создается в Azure к отчетной дате.

Спросить. Не могли бы вы проверить и подтвердить, что я должен использовать отчетную дату при создании отчетов о выставлении счетов?


person Aman Sharma    schedule 11.04.2016    source источник


Ответы (2)


Я считаю, что вы также можете использовать Reported Date для создания счета. Afaik Выставление счетов Microsoft также основано на отчетной дате. Я также проверял это в своей подписке в течение нескольких месяцев по сравнению с данными из биллингового API и обнаружил, что это правда.

person Navneet Sharma    schedule 15.04.2016

Я полагаю, что в documentation об этом довольно подробно сказано.

URL-адрес запроса для получения данных:

_https://management.azure.com/subscriptions/{subscription-Id}/providers/Microsoft.Commerce/UsageAggregates?api-version={api-version}&reportedStartTime={dateTimeOffset-value} &reportedEndTime={dateTimeOffset-value}&aggregationGranularity={granularity-value}&showDetails={showdetail-boolean-Value}&continuationToken={token-value}

Это означает, что при извлечении данных вы должны использовать 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, чтобы узнать больше об этих датах.

person Gaurav Mantri    schedule 12.04.2016
comment
Я не говорю о том, как получить данные об использовании. То, что вы объяснили, это сам вопрос. Я спрашиваю, после получения данных об использовании и прейскуранта, какую дату следует использовать для расчета и выставления счета. Это должна быть дата использования в соответствии с часто задаваемыми вопросами, но, по моим наблюдениям, кажется, что сама команда Azure также использует отчетную дату при расчете счета в конце месяца. Это нигде не задокументировано. Мне просто нужно подтверждение этого. - person Aman Sharma; 12.04.2016
comment
Данные об использовании даже не содержат отчетную дату/время. Я не уверен, как вы будете рассчитывать счет на основе данных, которых у вас нет. - person Gaurav Mantri; 12.04.2016
comment
У вас уже есть отчетная дата, когда вы вызываете API для получения данных. Значит, его нет в данных, предоставляемых API. Я добавляю отчетную дату/время к данным об использовании, прежде чем сохранять их в базе данных. Согласно часто задаваемым вопросам на официальном сайте, сообщаемая дата любых данных об использовании не меняется. Таким образом, мы можем безопасно записывать сообщаемую дату/время с данными об использовании, которые мы получаем на эту дату. - person Aman Sharma; 12.04.2016