猿问

Golang探查器找不到源代码

我已经net/http/pprof在我的代码中包含了这个包。然后我可以轻松地运行pprof分析器(在 Debian 上):


go tool pprof http://localhost:9000/debug/pprof/profile

诸如top10甚至生成调用图之类的命令都按预期工作。但是,一旦我尝试进入一个函数,它就会失败:


(pprof) list MyFunc

No source information for mypkg.MyFunc

我GOPATH的设置为我的项目目录。在构建源代码或运行 pprof 时,我是否需要任何特殊标志或环境变量?


慕无忌1623718
浏览 323回答 2
2回答

宝慕林4294392

在 golang-nuts 人的帮助下找到了答案。我需要指定二进制文件:go tool pprof mybinary http://localhost:9000/debug/pprof/profile这样就可以找到源代码并且可以用“list”命令列出。

天涯尽头无女友

我有同样的问题"net/http/pprof",尽管在 Windows 上。使用"runtime/pprof"替代,具有pprof.StartCPUProfile / StopCPUProfile解决它。
随时随地看视频慕课网APP

相关分类

Go
我要回答