Senior
Beállítottad a nyomkövetést?
sobes.tech MI
Válasz az MI-től
Igen, Go-ban a runtime/trace csomag segítségével konfigurálható a nyomon követés. A nyomon követés részletes információkat gyűjt a program végrehajtásáról: ütemező, rendszerhívások, zárolások, goroutine-ok működése stb.
A nyomon követés indításának példája:
import (
"os"
"runtime/trace"
"log"
)
func main() {
f, err := os.Create("trace.out")
if err != nil {
log.Fatal(err)
}
defer f.Close()
err = trace.Start(f)
if err != nil {
log.Fatal(err)
}
defer trace.Stop()
// programkód
}
Ezután a létrehozott fájl elemzhető a go tool trace trace.out parancs segítségével vizualizáció és szűk keresztmetszetek keresése céljából.