advanced

Prometheus

Собирайте и запрашивайте метрики через pull scraping, labels, PromQL, alert rules и контроль cardinality.

Prometheus scrape'ит метрики с exporters и instrumented приложений, хранит блоки TSDB и вычисляет alerting rules. Естественно сочетается с Grafana и Alertmanager для маршрутизации уведомлений.

					scrape_configs:
  - job_name: api
    metrics_path: /metrics
    static_configs:
      - targets: ['api:9090']
				

| Компонент | Роль | |-----------|------| | Exporters | node, postgres, blackbox probes | | Alertmanager | Группировка, inhibit, маршрут pages | | Service discovery | Targets pod'ов Kubernetes |

Retention под lookback инцидентов. Federation или remote write для долгого хранения при росте.

На интервью: HA, инциденты cardinality и blackbox vs whitebox monitoring.

Типовые ошибки: scrape через LB без согласованных labels; шторм алертов без inhibition; без лимитов ресурсов.

Компромисс — простота in-cluster против долгого хранения и сложности HA.

Чеклист:

  • Dynamic discovery targets в K8s.
  • Алерты через Alertmanager.
  • Мониторинг самого Prometheus.
  • Retention и remote write заранее.