// Copyright 2017 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package trace_test import ( "fmt" "log" "os" "runtime/trace" ) // Example demonstrates the use of the trace package to trace // the execution of a Go program. The trace output will be // written to the file trace.out func Example() { f, err := os.Create("trace.out") if err != nil { log.Fatalf("failed to create trace output file: %v", err) } defer func() { if err := f.Close(); err != nil { log.Fatalf("failed to close trace file: %v", err) } }() if err := trace.Start(f); err != nil { log.Fatalf("failed to start trace: %v", err) } defer trace.Stop() // your program here RunMyProgram() } func RunMyProgram() { fmt.Printf("this function will be traced") }