Junior — Middle
Comment peut-on accéder aux métriques clés du système?
sobes.tech IA
Réponse de l'IA
En Go, pour obtenir des métriques clés du système, on utilise souvent le paquet expvar, qui permet d’exporter des métriques au format JSON via HTTP. Les bibliothèques tierces, comme le client Prometheus pour Go, sont également populaires, car elles collectent et fournissent des métriques dans un format adapté à la surveillance.
Exemple avec expvar :
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)
// Les métriques seront accessibles via /debug/vars
http.ListenAndServe(":8080", nil)
}
Il est également possible d’utiliser des appels système standard et des bibliothèques pour obtenir des informations sur la mémoire, la charge CPU et d’autres métriques, par exemple via le paquet runtime.