nav-img
Evolution

Получение истории метрик

В этом разделе описано, как получить историю метрик из облака Cloud.ru через API.

Перед началом работы

Для получения истории метрик потребуется:

  • эндпоинт для запросов — https://monitoring.api.cloud.ru;

  • project_id;

    Подсказка

    Пример запроса с project_id вашего проекта для работы с API Cloud.ru можно найти в личном кабинете в разделе Мониторинг → Публичные API, блок Получение истории метрик.

  • токен для сервисного аккаунта, чтобы пройти аутентификацию в API.

Получение метрик с помощью curl-запроса

Чтобы получить истории метрик, выполните запрос:

curl -X GET --location "https://monitoring.api.cloud.ru/v1/{prodject_id}/export_metrics?match=условие" \ -H "Authorization: Bearer $TOKEN"

В теле запроса укажите параметры:

  • match — обязательный параметр, фильтр для задания условий и получения данных о метриках. Любой валидный запрос в promQL-формате, который возвращает массив значений.

    Варианты запроса:

    • match={product_type="enterprise_network"} — возвращает все метрики выделенных устройств NSX Provider Gateway/T0/Edge/T1.

    • match={product_instаnce_id="abcd..."} — возвращает все метрики экземпляра продукта.

    • match=usage_average — возвращает метрики по использованию процессора виртуальных машин платформы Облако VMware.

  • start — обязательный параметр, Unix timestamp в миллисекундах. Начало временного интервала, за который необходимо получить данные о метриках.

  • end — обязательный параметр, Unix timestamp в миллисекундах. Конец временного интервала, за который необходимо получить данные о метриках.

В ответ на запрос вернутся все значения метрик за указанный временной интервал, удовлетворяющие запросу.

{"metric":{"__name__":"metric_name","label_name":"label_value",...},"values":[value1,value2,..],"timestamps":[timestamp1,timestamp2,...]}

Где:

  • metric_name — название метрики.

  • label_name — название лейбла метрики.

  • label_value — значение лейбла.

  • value — значение метрики.

  • timestamp — временная метка, указанная в Unix timestamp в миллисекундах.

Каждому временному ряду соответствует отдельная строчка в получаемом массиве данных в следующем формате:

{"metric":{"__name__":"eiv_ballon_rss","name":"bm_vpc_2","id":"9b2eab6e-be9c-4527-a0a2-3c7e4be4534a","openstack_id":"cc8ec36b-03ed-4837-8d66-ff4f74936e7a","product_type":"evolution_iaas","project_id":"e3953394-c613-4074-b52b-012035c0eeb6"},"values":[37044,37044,37044],"timestamps":[1719878417000,1719878436000,1719878452000]}

В результате одного запроса может вернуться максимум 10 000 таймсерий. Если их будет больше, вернется ошибка.

Максимальный временной интервал для одного запроса — семь дней.

Набор методов для получения истории метрик

Parameters
  • project_id (string) – Идентификатор проекта

Query Parameters
  • match (array) – Правила выборки метрик - селектор временных рядов prometheus

  • start (integer) – Начало временного интервала, за который необходимо получить данные о метриках

  • end (integer) – Конец временного интервала, за который необходимо получить данные о метриках

Status Codes
Подсказка Актуальную спецификацию можно скачать и использовать в привычном инструменте.