2015-08-21 5 views
9

The Go 1.5 Release-Info sagt,Die gehen 1,5 trace Befehl

Der neue "go-Tool Trace" Befehl ermöglicht die Visualisierung von Programm Spuren durch neue Tracing-Infrastruktur in der Laufzeit generieren.

Das ist wirklich aufregend, und ich möchte mehr darüber wissen. Aber sein offizielles Dokument bei https://golang.org/cmd/trace/ ist wirklich trocken.

Gefunden, dass Rob Pike complained about it, fordern, dass "kurz nach der Version 1.5 sollte es einen Blog-Post über die Funktion sein."

Wenn jemand einen solchen Blog gepostet/entdeckt hat, fügen Sie hier einen Link hinzu. Oder, wenn Sie direkt hier antworten möchten, ist es auch willkommen.

Danke

+1

, was die Frage ist? –

Antwort

12

Es gibt zwei Möglichkeiten, wie Sie Trace-Dateien generieren können.

Methode 1

  1. Hinzufügen zu Beginn des Programms folgende Zeile

    f, err := os.Create(time.Now().Format("2006-01-02T150405.pprof")) 
    if err != nil { 
        panic(err) 
    } 
    defer f.Close() 
    
    if err := trace.Start(f); err != nil { 
        panic(err) 
    } 
    defer trace.Stop() 
    
  2. bauen das Programm

    bauen gehen

  3. Führen Sie Ihr Programm aus (z. B. ./myprogram)
  4. Starten Sie die Ablaufverfolgung.

    go Werkzeug trace myprogram 2015-08-21T115354.pprof

Methode 2

  1. eine Prüffunktion unter Verwendung von Testpaket schreiben.
  2. Run Test mit Ablaufverfolgungsflag

    go Test -trace trace.out

  3. Run Trace-Tool mit generierten .test und .out-Datei pkg

    go Werkzeug Spur .Testspur.

    aus

In beiden Fällen wird Ihr Browser etwas öffnen wie dieses

enter image description here enter image description here enter image description here