Запрос значений метки прометея со значениями метрики

Есть ли способ получить значения меток в качестве значения запроса prometheus. Например, мне нужно отфильтровать экземпляры, которые используют более 80% ЦП. Мне нужен список IP-адресов в качестве вывода. Возможно ли, что в столбце «Значение» будут только значения метрики.

Ожидаемый результат:

Value
10.21.123.21
72.34.128.31

person Sathish Kumar    schedule 29.01.2020    source источник


Ответы (1)


Использование HTTP API

Вы можете получить экземпляры с более чем 80% загрузки ЦП, выполнив следующую команду:

curl --silent --globoff --request GET "http://PROMETHEUS-SERVER/api/v1/query?query=100-100*avg%20by%20(instance)(irate(node_cpu_seconds_total{mode=\"idle\"}[5m]))>80" | jq --raw-output '.data.result[].metric.instance'

Использование Grafana

Если вы используете Grafana, вы можете добавить переменную в «Настройки панели инструментов»> «Переменные»> «Создать».

Параметры запроса:

Data source: Prometheus

Query: query_result(100 - 100 * avg by (instance) (irate(node_cpu_seconds_total{mode="idle"}[5m])) > 80)

Regex: /.*\"(.*)\".*/
person Marcelo Ávila de Oliveira    schedule 31.01.2020
comment
Я не использую графану для визуализации. Мне нужно сделать это с помощью Http API, предоставленных prometheus. Я получаю значения меток, если использую / label / instance / values. Но как получить значения, которые присутствуют в результате запроса. - person Sathish Kumar; 24.02.2020
comment
Я добавил информацию об HTTP API. - person Marcelo Ávila de Oliveira; 24.02.2020