Azure: получить текущий баланс одного ресурса через REST API

Я хочу получить в реальном времени текущую сумму, потраченную данным ресурсом (а не всей подпиской или группой ресурсов) в течение текущего периода в MS Azure через REST API Azure (например: в этом месяце мы потратили X $ на этот ресурс). Я копался в Billing API и общей документации REST API (а также в их SDK node.js), но не могу найти ничего, что могло бы это сделать.

Кто-нибудь когда-нибудь делал что-то подобное? Любая помощь будет оценена.

@MdFaridUddinKiron, ты прав, я забыл, спасибо за напоминание!

CedricLaberge 28.05.2019 14:38
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
Как установить LAMP Stack 1/2 на Azure Linux VM
Как установить LAMP Stack 1/2 на Azure Linux VM
В дополнение к нашему предыдущему сообщению о намерении Azure прекратить поддержку Azure Database для MySQL в качестве единого сервера после 16...
1
1
1 493
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

API, на который вы хотели бы взглянуть, — это Consumption API, а операция, которую вы хотели бы использовать, — Usage Details - List.

Обратите внимание, что:

  • Для параметра {scope} укажите /subscriptions/{subscriptionId}/.
  • Чтобы получить потребление для определенного ресурса, вам нужно будет указать путь к этому ресурсу в $filter.

Например, если вам нужно потребление для определенной учетной записи хранения, скажем, за апрель 2019 года, критерии фильтрации выглядят следующим образом:

$filter=properties/instanceId eq '/subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.Storage/storageAccounts/{storage-account-name}' and properties/usageStart ge '2019-04-01T00:00:00.0000000Z' and properties/usageEnd lt '2019-05-01T00:00:00.0000000Z'&$expand=meterDetails,additionalProperties

Azure Платежные API можно использовать для извлечения данных об использовании и ресурсах в предпочтительные инструменты анализа данных.

Azure Resource Usage API и Azure Resource RateCard API могут помочь точно прогнозировать расходы и управлять ими. API-интерфейсы реализованы как поставщик ресурсов и часть семейства API-интерфейсов, предоставляемых Azure Resource Manager.

Рекомендуемые шаги

  1. Используйте API использования ресурсов Azure, чтобы получить список доступных Ресурсы Azure и информация о приблизительных ценах для каждого из них.
  2. Используйте API оценочной карты ресурсов Azure, чтобы получить приблизительную оценку Azure. данные о потреблении.

Note: Support for Pay-as-you-go, MSDN, Monetary commitment, and Monetary credit offers (EA and CSP not supported)

  1. Azure API загрузки счетов позволяет вам получить доступ к вашей счет-фактура в формате PDF после регистрация завершена. Он может использоваться для извлечения данных об использовании и ресурсах в предпочтительном анализе данных инструменты.

Note: This feature is in first version of preview and may be subject to backward-incompatible changes. Currently, it's not available for certain subscription offers (EA, CSP, AIO not supported) and Azure Germany.

  1. API отчетов для клиентов EA – Подробная информация об использовании предлагает ежедневный разбивка потребляемых количеств и расчетных расходов по Зачисление. Результат также включает информацию об экземплярах, метров и отделений. API можно запросить по расчетному периоду или к указанной дате начала и окончания

Рекомендуемые документы

  1. REST API для выставления счетов Azure

  2. Обзор API выставления счетов Azure

  3. Обзор диспетчера ресурсов Azure

  4. Браузер REST API

Если у вас все еще есть какие-либо вопросы, не стесняйтесь поделиться. Спасибо и удачного кодирования!

Ответ принят как подходящий

Обратите внимание на этот документ: Обзор API потребления Azure, здесь показано, что вы можете использовать API сведений об использовании с фильтром, чтобы получить то, что вы хотите:

  • Filtering - Trim your API result set down to a smaller set of usage detail records using the following filters:
    • Usage end / usage start
    • Resource Group
    • Resource Name

Вот формат этого API:

GET https://management.azure.com/{scope}/providers/Microsoft.Consumption/usageDetails?$expand = {$expand}&$filter = {$filter}&$skiptoken = {$skiptoken}&$top = {$top}&$apply = {$apply}&api-version=2019-01-01

Для {scope}, за исключением того, что можно использовать «/subscriptions/{subscriptionId}/» для области действия подписки, он также может использовать «/providers/Microsoft.Billing/billingAccounts/{billingAccountId}» для области действия учетной записи для выставления счетов и т. д. Для получения более подробной информации см. документ.

Используйте $filter = {$filter}, чтобы достичь того, чего вы хотите (доступ к конкретному ресурсу), здесь предоставлен мой API для справки:

GET https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Consumption/usageDetails?$expand=meterDetails,additionalProperties&$filter=properties/usageEnd ge '2019-01-1' AND properties/usageEnd le '2019-05-22' AND properties/instanceName eq '{instanceName}'&$top=30&api-version=2019-01-01

eq means equals, ge means greater or equal, le means less or equal, and the instanceNmae means your specific resource name that the usage is about.

Спасибо за упоминание о «свойствах/», я пропустил это, и теперь мой запрос выполняется.

Sayantan 08.08.2020 01:11

Другие вопросы по теме