Отслеживание событий с прометеем и графаной - PullRequest
0 голосов
/ 18 мая 2018

Есть статья "Отслеживание каждого выпуска" , в которой рассказывается об отображении вертикальной линии на графиках для каждого развертывания кода.Они используют графит.Я хотел бы сделать что-то подобное с Prometheus 2.2 и Grafana 5.1.Более конкретно, я хочу, чтобы на графике отображалось событие «запуск приложения».

Похоже, что аннотации Grafana являются подходящим механизмом для этого, но я не могу понять, какой тип метрики Прометея использовать и какзапросить его.

Ответы [ 2 ]

0 голосов
/ 19 мая 2018

Вы можете получить тот же результат исключительно из метрик Прометея, не нужно ничего толкать в Графану:

Annotation from Prometheus query

Если вы хотите отслеживать все перезапускиВаше поисковое выражение может выглядеть примерно так:

changes(start_time_seconds{job="foo",env="prod"} > 0

Или что-то вроде этого, если вы хотите отслеживать изменения версии (а у вас есть какая-то метрика info, которая предоставляла версию):

alertmanager_build_info unless max_over_time(alertmanager_build_info[1d] offset 5m)

Последнее выражение должно выводить вывод только в течение 5 минут всякий раз, когда появляется новая метрика alertmanager_build_info (т. Е. С другими метками, такими как version).Кроме того, вы можете настроить его так, чтобы вывод получался только при изменении version, например, путем объединения всех других меток.

0 голосов
/ 18 мая 2018

Простейший способ сделать это - использовать тот же базовый подход, что и в статье, когда ваш инструмент развертывания сообщает Grafana, когда он выполняет развертывание.

Grafan имеет встроенную систему для хранения аннотаций,которые отображаются на графиках в виде вертикальных линий и могут иметь связанный с ними текст.Это будет так же просто, как создать ключ API в вашем экземпляре Grafana и добавить вызов curl в сценарий развертывания:

curl -H "Authorization: Bearer <apikey>" http://grafana:3000/api/annotations -H "Content-Type: application/json" -d '{"text":"version 1.2.3 deployed","tags":["deploy","production"]}'

Для получения дополнительной информации о доступных параметрах проверьте документацию:

http://docs.grafana.org/http_api/annotations/

Как только вы добавили свои развертывания в качестве аннотаций, вы можете отобразить их на своей панели мониторинга, перейдя на вкладку аннотаций в настройках панели и добавив новый источник аннотаций: adding annotation source

Тогда аннотации будут отображаться на панелях панели управления: panel showing annotation

...