Sobes.tech
Назад к вопросам
Junior — Middle
77

Имел ли опыт использования библиотек для интеграции с Prometheus?

Компании, где спрашивали
Rubytech

Ответ от нейросети

sobes.tech AI

Да, в Go существует официальная клиентская библиотека для интеграции с Prometheus — это пакет prometheus/client_golang. Он позволяет создавать и регистрировать метрики (счётчики, гистограммы, сумматоры и т.д.), которые затем можно экспортировать для сбора Prometheus.

Пример использования:

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: "The total number of processed events",
    })
)

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

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

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

Такой подход позволяет легко интегрировать метрики в ваше приложение и собирать их с помощью Prometheus.