Sobes.tech
Junior — Middle

Aveți experiență în utilizarea bibliotecilor pentru integrarea cu Prometheus?

sobes.tech AI

Răspuns de la AI

Da, în Go există o bibliotecă client oficială pentru integrarea cu Prometheus — este pachetul prometheus/client_golang. Acesta permite crearea și înregistrarea metricilor (contori, histogramme, sumatori etc.), care pot fi apoi exportate pentru colectare de către Prometheus.

Exemplu de utilizare:

import (
    "github.com/prometheus/client_golang/prometheus"
    "github.com/prometheus/client_golang/prometheus/promhttp"
    "net/http"
)

var (
    opsProcessed = prometheus.NewCounter(prometheus.CounterOpts{
        Name: "myapp_processed_ops_total",
        Help: "Numărul total de evenimente procesate",
    })
)

func init() {
    prometheus.MustRegister(opsProcessed)
}

func handler(w http.ResponseWriter, r *http.Request) {
    opsProcessed.Inc()
    w.Write([]byte("Salut, Prometheus!"))
}

func main() {
    http.Handle("/metrics", promhttp.Handler())
    http.HandleFunc("/", handler)
    http.ListenAndServe(":8080", nil)
}

Această abordare permite integrarea ușoară a metricilor în aplicația ta și colectarea lor cu Prometheus.