Облачная платформаEvolution

Получить метрики в формате Prometheus text-based exposition

Эта статья полезна?

Примечание

API сервиса находится на стадии Preview.

В инструкции описано, как получить метрики из облака Cloud.ru в формате Prometheus text-based exposition по pull-модели (scraping).

Public API позволяет получать метрики, уже записанные в проект, но не вычислять новые.


  1. Выполните запрос:

    curl -v -G 'https://monitoring.api.cloud.ru/v2/{project_id}/scrape_metrics' \ --data-urlencode 'match=условие' \ -H "Authorization: Bearer $TOKEN"
  2. В теле запроса укажите следующие параметры:

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

    Пример валидного запроса: match=metric_name, где metric_name — название метрики.

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

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

Подробное описание параметров читайте в справочнике API.

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

metric_name{label_name="label_value",label_name="label_value",...} value timestamp

Где:

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

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

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

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

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

Каждому

соответствует отдельная строчка в получаемом массиве данных. Например:

{
nsx.gw.port.tx.total_packets{alias="abcd-VDC-1-edge02",host_id="uuid",host_name="abcd-VDC-1-edge02-qwerty",interface_name="192.168.1.254/-ba9b508c...",interface_type="Tx segment downlink",product_type="product_type_name",project_id="uuid",region="Lab",service_instance_id="uuid",tenant_name="abcd-UI-QWERTY"} 1.027992130413 1703848117458
nsx.gw.port.tx.total_packets{alias="abcd-VDC-1-edge02",host_id="uuid",host_name="abcd-VDC-1-edge02-qwerty",interface_name="Uplink",interface_type="T1 uplink",product_type="product_type_name",project_id="uuid",region="Lab",service_instance_id="uuid",tenant_name="abcd-UI-QWERTY"} 2.159119950351 1703848117457
}

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