Вики / Службы и systemd
Prometheus (метрики)
Сбор метрик по pull-модели — таргеты, PromQL, экспортеры, алерты.
Prometheus собирает метрики по pull-модели: сам периодически опрашивает
(scrape) HTTP-эндпоинты /metrics у целей (таргетов). Хранит временные ряды,
позволяет запрашивать их языком PromQL и слать алерты.
экспортеры (node_exporter, app /metrics) ← scrape ← Prometheus → PromQL / алерты → Alertmanager
Метрики служб дают экспортеры: node_exporter (хост), nginx-exporter, и т.п.
prometheus.yml — что и как часто опрашивать:
global:
scrape_interval: 15s
scrape_configs:
- job_name: node
static_configs:
- targets: ['10.0.0.1:9100', '10.0.0.2:9100']
- job_name: app
metrics_path: /metrics
static_configs:
- targets: ['app:8000']
promtool check config prometheus.yml # проверить конфиг
curl -s localhost:9090/-/reload -X POST # перечитать (если включён web.enable-lifecycle)
Веб-интерфейс на :9090. Примеры запросов:
up # 1/0 — жив ли таргет
rate(http_requests_total[5m]) # запросов в секунду за 5 минут
node_filesystem_avail_bytes / node_filesystem_size_bytes # доля свободного на ФС
100 - (avg by(instance)(rate(node_cpu_seconds_total{mode="idle"}[5m]))*100) # %CPU
http://<prom>:9090/targets — статус всех целей (UP/DOWN и ошибки scrape).
Таргет DOWN
Открой /targets — там причина (connection refused / timeout / 404). Проверь, что
экспортер слушает (ss -tlnp | grep 9100) и порт открыт (firewall).
curl http://target:9100/metrics — отдаёт ли метрики.
Нет данных по метрике
Проверь имя метрики и лейблы в UI (autocomplete). up{job="x"} — скрапится ли job.
Prometheus ест диск
Ретеншн и количество рядов. --storage.tsdb.retention.time=15d; сократи
high-cardinality лейблы.
Алерты не приходят
Проверь правила (promtool check rules), связь с Alertmanager и его маршруты.
promtool check config prometheus.yml # проверить конфиг
# UI :9090/targets — статус целей ; :9090/graph — PromQL
up ; rate(metric[5m]) # жив ли таргет / скорость
curl http://target:9100/metrics # отдаёт ли экспортер
См. также
- ss (сокеты и порты) — Сеть
- Мониторинг системы (load, top, vmstat) — Процессы
- Grafana (дашборды) — Службы и systemd