为了账号安全,请及时绑定邮箱和手机立即绑定

go 1.5 跟踪命令

go 1.5 跟踪命令

Go
慕田峪4524236 2021-11-01 16:14:39
Go 1.5 发行说明说,新的“go tool trace”命令可以在运行时实现由新跟踪基础设施生成的程序跟踪的可视化。这真的很令人兴奋,我想了解更多。但是它在https://golang.org/cmd/trace/ 的官方文档真的很枯燥。发现Rob Pike 抱怨它,要求“在 1.5 发布后不久,应该有一篇关于该功能的博客文章。”如果有人发布/发现了这样的博客,请在此处添加链接。或者,如果你想直接在这里回答,也欢迎。谢谢
查看完整描述

1 回答

?
慕慕森

TA贡献1856条经验 获得超17个赞

有两种方法可以生成跟踪文件。

方法一

  1. 在程序开头添加以下行

    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. 构建程序

    去建造

  3. 运行你的程序(例如./myprogram

  4. 运行跟踪。

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

方法二

  1. 使用测试包编写测试功能。

  2. 使用跟踪标志运行测试

    go test -trace trace.out

  3. 使用生成的 .test 和 .out 文件运行跟踪工具

    go tool trace pkg.test trace.out

在这两种情况下,您的浏览器都会打开这样的内容

//img1.sycdn.imooc.com//617fa22d000146e713640766.jpg

//img1.sycdn.imooc.com//617fa2370001e81013650767.jpg

//img1.sycdn.imooc.com//617fa2400001350513640766.jpg

查看完整回答
反对 回复 2021-11-01
  • 1 回答
  • 0 关注
  • 187 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信