Sobes.tech
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.