Перейти к содержимому
1 / 15

Что такое Prometheus и почему он забирает метрики сам, а не принимает их

Prometheus — сервер, который по расписанию ходит HTTP-запросом на эндпоинт /metrics каждой цели и забирает текущие значения, а не ждёт, пока приложение их пришлёт. Из этой одной особенности следует почти всё остальное: сервер знает полный список целей, поэтому отличает «сервис молчит» от «сервиса не существует» — служебная метрика up становится бесплатной проверкой живости; конфигурация мониторинга лежит в одном месте, а не размазана по двум десяткам приложений; отладка сводится к curl localhost:8080/metrics без всякой инфраструктуры. Плата — Prometheus обязан дотянуться до каждой цели по сети, а короткоживущие задачи, которые успевают умереть между скрейпами, приходится отправлять через Pushgateway. Данные лежат в локальной базе временных рядов, кластера у Prometheus нет: масштабирование — это шардирование по нескольким независимым серверам плюс вынос долгого хранения наружу через remote write.

Что такое Prometheus и почему он забирает метрики сам, а не принимает их | JScriptiser