Hogyan valósulnak meg az exportőrök által a metrikák átviteli módszerei?
sobes.tech MI
Válasz az MI-től
A metrikák exportálói általában protokollokon és formátumokon keresztül valósítják meg az adatok gyűjtését és továbbítását az aggregációs rendszerekhez (például Prometheus).
Főbb átviteli módok:
-
Pull modell (lekérdezés) — az exportáló HTTP végpontot biztosít, amelyhez a monitorozó rendszer időszakosan kérdéseket küld, és aktuális metrikákat kap például a Prometheus kifejtési formátumban.
-
Push modell (küldés) — az exportáló közvetlenül küldi a metrikákat a monitorozó szervernek API-kon vagy protokollokon keresztül (például Pushgateway a Prometheusban).
-
Közbenső broker-ek használata — a metrikák üzenetsorokba (Kafka, RabbitMQ) kerülnek, ahonnan a monitorozó rendszer veszi őket.
Példa a metrikák exportálására Prometheusban (pull modell):
import (
"github.com/prometheus/client_golang/prometheus"
"github.com/prometheus/client_golang/prometheus/promhttp"
"net/http"
)
func main() {
http.Handle("/metrics", promhttp.Handler())
http.ListenAndServe(":2112", nil)
}
Itt az exportáló HTTP szervert indít, amely kérésre a Prometheus által értelmezhető formátumban adja vissza a metrikákat.