Получайте данные от Прометея только с последней итерации - PullRequest
0 голосов
/ 09 ноября 2018

Вариант использования

Я создаю инструмент для отображения запросов ресурсов всех модулей в кластере kubernetes. Prometheus уже очищает мой экспортер метрик prometheus и исторически сохраняет все очищенные метрики (интервал 10 с), чтобы я мог даже видеть запросы ресурсов со всех модулей 10 дней назад.

Проблема

Каждый раз, когда модуль был перераспределен, он меняет имя. Тем не менее, я хочу показать только запросы ресурсов фактически запущенных модулей. Для этой цели я, очевидно, мог бы добавить селектор времени, например, показать мне только максимальные результаты 15 с, но это было бы немного взломать. Если возможно, я бы хотел получить результаты последней итерации (которая в случае проблем может быть старше 15 с).

Вопрос

Какой лучший способ получить только те метрики Прометея, которые были очищены в последней итерации?

Например,

eagle_container_resource_requests_cpu вернет запрошенные ядра ЦП модулей, которые в настоящее время больше не существуют.

Примечание: Я пытаюсь добиться такого поведения в таблице Графана.

Ответы [ 2 ]

0 голосов
/ 12 ноября 2018

Стабильность может быть то, что вы ищете: https://prometheus.io/docs/prometheus/latest/querying/basics/#staleness

Итак, через 5 минут вы начнете видеть исчезновение значений.

0 голосов
/ 09 ноября 2018

Когда вы запрашиваете метрику eagle_container_resource_requests_cpu, вы получаете последнее значение, например, это фактический запрос, который вы отправляете с помощью выполнения графа Прометея:

https://<prometheus-url>/api/v1/query?query=eagle_container_resource_requests_cpu&time=1541769935.01&_=1541769677378

Более того, вы можете проверить это с помощью прямого вызова Prometheus API :

curl 'http://localhost:9090/api/v1/query?query=eagle_container_resource_requests_cpu&time=2018-11-09T10:10:51.781Z'

В обоих ответах будет содержаться метка времени, например ::1010*.

"value":[1541770056.042,"11"]

Если вы хотели бы видеть это на диаграмме синглстата Графаны:

Вы можете увидеть текущее (самое последнее) значение или время этой последней точки.

enter image description here

...