FlameGraph 火焰图快速指南(TiDB)

aside section ._1OhGeD · · 1158 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

快速开始


方法1:先生成 profile 文件,再使用工具解析

生成 profile 文件

生成 profile 文件
用浏览器访问 http://{TiDBIP}:10080/debug/zip
或者
curl http://{TiDBIP}:10080/debug/zip --output tidb_debug.zip
生成的 tidb_debug.zip 包括
goroutine               
heap(内存)                    
mutex                   
profile(CPU)                 
config                  
version  
如果只想要 cpu 的火焰图,可以使用
http://{TiDBIP}:10080/debug/pprof/profile
默认是采样10秒,如果需要修改采样时间,可以使用 ?seconds=
http://{TiDBIP}:10080/debug/zip?seconds=60

安装火焰图相关组件

安装 epel-release
yum isntall -y epel-release
安装 golang
yum install -y golang
安装 Graphviz
yum install -y graphviz

使用 pprof 解析并图像化 profile/heap

go tool pprof -http 172.16.4.51:8080 .../profile

Serving web UI on http://172.16.4.51:8080
http://172.16.4.51:8080

其中 172.16.4.51:8080 为 go tool pprof 服务侦听地址

访问服务地址,在 view 中选择 flame graph












方法2:直接使用工具解析,访问 Tidb 的 Http Api

安装火焰图相关组件

安装 epel-release
yum isntall -y epel-release
安装 golang
yum install -y golang
安装 Graphviz
yum install -y graphviz

使用 pprof 解析并图像化 profile/heap,直接访问 Tidb 的 Http Api

go tool pprof -http 172.16.4.51:8080 http://{tidbip}:10080/debug/pprof/profile

Fetching profile over HTTP from http://{tidbip}:10080/debug/pprof/profile
Saved profile in /root/pprof/pprof.tidb-server.samples.cpu.001.pb.gz
http://172.16.4.51:8080

访问应用地址即可


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:aside section ._1OhGeD

查看原文:FlameGraph 火焰图快速指南(TiDB)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1158 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传