在Linux上生成java程序的火焰图

首先安装perf-map-agent,这个比较麻烦,执行如下:
mkdir /usr/lib/jvm
cd /usr/lib/jvm
yum install git
git clone –depth=1 https://github.com/jvm-profiling-tools/perf-map-agent
cd perf-map-agent/
yum install cmake
yum install gcc
yum install gcc-c++
cmake .
make
接着,到https://github.com/brendangregg/FlameGraph.git下载目录并解压;
然后,进入Flamegraph目录,执行如下操作:
perf record -F 49 -p 2971 -g – sleep 20 以49赫兹的频率捕获pid为2971的进程信息20秒
./jmaps 获取进程符号信息
perf script > out.stacks01
cat out.stacks01 | ./stackcollapse-perf.pl | grep -v cpu_idle | ./flamegraph.pl –color=java –hash > out.stacks01.svg

最终,得到了文件out.stacks01.svg,可以在浏览器上打开,其中绿色的部分表示java。
注意,jdk版本需要高于JDK8u60。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值