Sobes.tech
Junior — Middle

Jaké metody monitorování a diagnostiky stavu serveru znáš?

sobes.tech AI

Odpověď od AI

Pro sledování a diagnostiku stavu serveru v Go se často používají následující metody:

  • Profilování pomocí pprof — vestavěný balíček pro sběr profilů CPU, paměti, zámků a gorutin. Umožňuje identifikovat úzká místa a úniky.

  • Logování — sběr a analýza logů serveru pro odhalení chyb a anomálií.

  • Metriky s Prometheus — export metrik (například počet požadavků, doba odezvy, využití paměti) a vizualizace přes Grafanu.

  • Kontroly zdraví (health checks) — speciální HTTP endpointy, které vracejí stav serveru.

  • Tracing požadavků (tracing) — použití OpenTelemetry nebo Jaeger pro sledování řetězců volání.

Příklad použití pprof:

import (
    "net/http"
    _ "net/http/pprof"
)

func main() {
    go func() {
        log.Println(http.ListenAndServe("localhost:6060", nil))
    }()
    // hlavní kód serveru
}

Po spuštění lze otevřít http://localhost:6060/debug/pprof/ pro analýzu.