Middle
Ako exportéri prenášajú metriky?
sobes.tech AI
Odpoveď od AI
Exportéri používajú rôzne protokoly a formáty na prenos metrík do systémov monitorovania, ako sú Prometheus, Grafana a ďalšie. Hlavné prístupy:
-
Protokol Prometheus:
- Exportér otvára HTTP server na určenom porte.
- Systém monitorovania (napríklad server Prometheus) periodicky "scrapuje" (získa) metriky z tohto HTTP servera.
- Formát dát — textový, špecifický pre Prometheus, kde každý riadok predstavuje metriku s metkami a hodnotou.
# HELP go_gc_duration_seconds Súhrn doby pozastavenia garbage collectora v jazyku 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 cez gRPC alebo iné RPC rámce:
- Efektívnejší v hľadisku veľkosti a parsovania dát.
- Často používaný v vysoko zaťažených systémoch alebo pri prenose dát cez sieť s obmedzenou šírkou pásma.
- Vyžaduje definíciu štruktúry metrík v súboroch
.proto.
-
JSON cez HTTP API:
- Bežný formát, ktorý je ľahko parsovateľný viacerými systémami.
- Exportér poskytuje HTTP API, cez ktoré je možné získať metriky vo formáte JSON.
{ "metrics": [ { "name": "http_requests_total", "labels": { "method": "GET", "status": "200" }, "value": 1024 } ] } -
OpenTelemetry Protocol (OTLP):
- Štandardizovaný protokol na zber telemetrie (metrík, trace-ov, logov).
- Podporuje prenos dát cez gRPC alebo HTTP.
- Dátové protokoly sú založené na Protobuf.
-
Proprietárne protokoly:
- Niektoré systémy monitorovania alebo agenti používajú vlastné protokoly na prenos dát, optimalizované pre ich špecifické potreby.
Výber protokolu závisí od systému monitorovania, typu exportéra, požiadaviek na výkon a flexibilitu. Najbežnejším prístupom v ekosystéme Prometheus je scrapovanie metrík cez HTTP v jeho nativnom textovom formáte.