Middle
Jak exportéři předávají metriky?
sobes.tech AI
Odpověď od AI
Exportéři používají různé protokoly a formáty pro přenos metrik do systémů monitorování, jako jsou Prometheus, Grafana a další. Hlavní přístupy:
-
Protokol Prometheus:
- Exportér otevře HTTP server na určitém portu.
- Monitorovací systém (například server Prometheus) periodicky "scrapuje" (získává) metriky z tohoto HTTP serveru.
- Formát dat je textový, specifický pro Prometheus, kde každý řádek představuje metriku s štítky a hodnotou.
# HELP go_gc_duration_seconds Souhrn dob trvání pauz garbage collectoru v Go. # TYPE go_gc_duration_seconds summary go_gc_duration_seconds{quantile="0"} 6.14e-06 go_gc_duration_seconds{quantile="0.25"} 1.0281e-05 go_gc_duration_seconds{quantile="0.5"} 1.2357e-05 -
Protobuf přes gRPC nebo jiné RPC frameworky:
- Efektivnější formát dat z hlediska velikosti a parsování.
- Často používaný ve vysoce zatížených systémech nebo při přenosu dat přes sítě s omezenou kapacitou.
- Vyžaduje definici struktury metrik v
.protosouborech.
-
JSON přes HTTP API:
- Rozšířený formát, který je snadno parsovatelný mnoha systémy.
- Exportér poskytuje HTTP API, přes které lze získat metriky ve formátu JSON.
{ "metrics": [ { "name": "http_requests_total", "labels": { "method": "GET", "status": "200" }, "value": 1024 } ] } -
Protokol OpenTelemetry (OTLP):
- Standardizovaný protokol pro sběr telemetrie (metriky, trace, logy).
- Podporuje přenos dat přes gRPC nebo HTTP.
- Datové protokoly jsou založeny na Protobuf.
-
Proprietární protokoly:
- Některé systémy monitorování nebo agenti používají vlastní protokoly pro přenos dat, optimalizované pro jejich specifické potřeby.
Výběr protokolu závisí na monitorovacím systému, typu exportéru, požadavcích na výkon a flexibilitu. Nejrozšířenější přístup v ekosystému Prometheus je scraping metrik v nativním textovém formátu přes HTTP.