trace

package
v1.22.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 24, 2024 License: BSD-3-Clause Imports: 25 Imported by: 0

Documentation

Overview

Trace is a tool for viewing trace files.

Trace files can be generated with:

  • runtime/trace.Start
  • net/http/pprof package
  • go test -trace

Example usage: Generate a trace file with 'go test':

go test -trace trace.out pkg

View the trace in a web browser:

go tool trace trace.out

Generate a pprof-like profile from the trace:

go tool trace -pprof=TYPE trace.out > TYPE.pprof

Supported profile types are:

  • net: network blocking profile
  • sync: synchronization blocking profile
  • syscall: syscall blocking profile
  • sched: scheduler latency profile

Then, you can use the pprof tool to analyze the profile:

go tool pprof TYPE.pprof

Note that while the various profiles available when launching 'go tool trace' work on every browser, the trace viewer itself (the 'view trace' page) comes from the Chrome/Chromium project and is only actively tested on that browser.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type NameArg

type NameArg struct {
	Name string `json:"name"`
}

type RegionArg

type RegionArg struct {
	TaskID uint64 `json:"taskid,omitempty"`
}

type SortIndexArg

type SortIndexArg struct {
	Index int `json:"sort_index"`
}

type TaskArg

type TaskArg struct {
	ID     uint64 `json:"id"`
	StartG uint64 `json:"start_g,omitempty"`
	EndG   uint64 `json:"end_g,omitempty"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL