Přeskočit na obsah
_CORE
AI & Agentic Systems Core Informační Systémy Cloud & Platform Engineering Data Platforma & Integrace Security & Compliance QA, Testing & Observability IoT, Automatizace & Robotika Mobile & Digital Banky & Finance Pojišťovnictví Veřejná správa Obrana & Bezpečnost Zdravotnictví Energetika & Utility Telco & Média Průmysl & Výroba Logistika & E-commerce Retail & Loyalty
Reference Technologie Blog Knowledge Base O nás Spolupráce Kariéra
Pojďme to probrat

Prometheus — metriky a monitoring pro mikroslužby

12. 10. 2016 1 min čtení CORE SYSTEMSdevops

ELK řeší logy. Ale co metriky? CPU, paměť, response time, error rate, business metriky? Prometheus od SoundCloud (nyní CNCF projekt) je monitoring systém navržený pro dynamické, kontejnerové prostředí.

Pull model

Na rozdíl od Graphite (push), Prometheus aktivně scrapuje metriky z endpointů. Každá služba exposuje /metrics endpoint, Prometheus ho periodicky čte. Výhoda: vidíte okamžitě, když služba přestane odpovídat.

Metriky v aplikaci

# prometheus.yml
scrape_configs:
  - job_name: 'user-api'
    scrape_interval: 15s
    static_configs:
      - targets: ['user-api:8080']

# V Java aplikaci (Micrometer)
Counter requestCounter = Counter.builder("api.requests")
    .tag("endpoint", "/users")
    .tag("method", "GET")
    .register(meterRegistry);

PromQL

Dotazovací jazyk pro metriky. rate(http_requests_total[5m]) — request rate za posledních 5 minut. histogram_quantile(0.95, ...) — 95. percentil latence. Mocný, ale křivka učení.

Grafana dashboardy

Grafana vizualizuje Prometheus data. Community dashboardy pro Node.js, JVM, Docker, Nginx. Alerting přes Alertmanager — Slack, email, PagerDuty.

Prometheus vs. Graphite/InfluxDB

Prometheus: pull model, PromQL, service discovery, navržený pro kontejnery. Graphite: push model, starší, stabilní. InfluxDB: push, SQL-like query, lepší pro IoT time series. Pro mikroslužby Prometheus jasně vede.

Metriky jsou základ SRE

Logy říkají co se stalo. Metriky říkají jak se systém chová. Prometheus + Grafana = standard pro monitoring cloud-native aplikací.

awsmonitoringec2s3