cd ~
git clone https://github.com/brendangregg/FlameGraph.git
cd FlameGraph-master
cp flamegraph.pl /usr/local/bin
// 检测FlameGraph安装是否成功
flamegraph.pl -h
go get github.com/uber/go-torch
const (
cpuProfile = "cpuprof"
memProfile = "memprof"
)
fc, _ := os.Create(cpuProfile)
pprof.StartCPUProfile(fc)
defer func() {
pprof.StopCPUProfile()
fc.Close()
}()
fm, _ := os.Create(memProfile)
pprof.WriteHeapProfile(fm)
defer fm.Close()
./main
go tool pprof -svg ./main cpuprof
go tool pprof -svg ./main memprof
go-torch --binaryname=./main --binaryinput=cpuprof
go-torch --binaryname=./main --binaryinput=memprof