Sobes.tech
Junior — Middle

Bir uygulamadan Grafana'ya görselleştirme ve izleme için metrikler nasıl iletilebilir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Go uygulamasından Grafana'ya metrikleri iletmek için genellikle Prometheus izleme sistemi kullanılır ve bu sistem Grafana ile iyi entegre olur.

Ana adımlar:

  1. Go uygulamasında Prometheus istemci kitaplığı (prometheus/client_golang) bağlanır.
  2. Metrikler (sayıcılar, histogramlar, göstergeler) tanımlanır ve kaydedilir.
  3. /metrics uç noktasına sahip bir HTTP sunucusu başlatılır, bu uç nokta Prometheus tarafından anlaşılır biçimde mevcut metrik değerlerini sağlar.
  4. Prometheus'ta bu uç noktadan metriklerin toplanması yapılandırılır.
  5. Grafana, veri kaynağı olarak Prometheus'a bağlanır ve metrikleri görselleştirir.

Go dilinde örnek kod:

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

var (
    opsProcessed = prometheus.NewCounter(prometheus.CounterOpts{
        Name: "myapp_processed_ops_total",
        Help: "İşlenmiş toplam olay sayısı",
    })
)

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

func main() {
    http.Handle("/metrics", promhttp.Handler())
    go func() {
        for {
            opsProcessed.Inc() // sayacı artır
            time.Sleep(time.Second)
        }
    }()
    http.ListenAndServe(":2112", nil)
}

Bu şekilde, metrikler Prometheus tarafından toplanabilir ve Grafana'da görselleştirilebilir hale gelir.