Sobes.tech
Junior — Middle

Sistemin temel metriklerine nasıl erişilebilir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Go dilinde, sistemin anahtar metriklerini almak için sıklıkla expvar paketi kullanılır; bu paket, metrikleri HTTP üzerinden JSON formatında dışa aktarmayı sağlar. Ayrıca, Prometheus istemcisi gibi üçüncü taraf kütüphaneler de popülerdir; bunlar, metrikleri toplar ve izleme için uygun bir formatta sağlar.

expvar kullanımıyla örnek:

import (
    "expvar"
    "net/http"
)

var requests = expvar.NewInt("requests")

func handler(w http.ResponseWriter, r *http.Request) {
    requests.Add(1)
    w.Write([]byte("Hello, metrics!"))
}

func main() {
    http.HandleFunc("/", handler)
    // Metrikler /debug/vars altında erişilebilir
    http.ListenAndServe(":8080", nil)
}

Ayrıca, bellek, CPU yükü ve diğer metrikler hakkında bilgi almak için standart sistem çağrıları ve kütüphaneler de kullanılabilir; örneğin, runtime paketi aracılığıyla.