我想为我的应用程序收集一些性能分析数据,然后运行perf工具和Flame Graphs。Ubuntu 16.04 LTS - 如何启用perf工具的符号
我指在此SlideShare上提供的说明:https://www.slideshare.net/brendangregg/java-performance-analysis-on-linux-with-flame-graphs
下面是我运行命令:
1. sudo perf record -F 997 -a -g
2. sudo perf script > out.stacks01
当运行所述第二命令时,它显示以下消息:
Failed to open /tmp/perf-9931.map, continuing without symbols.
no symbols found in <some path>, maybe install a debug package?
我做了一些在线浏览,并尝试安装调试包,如在此提到的:https://gist.github.com/NLKNguyen/2fd920e2a50fd4b9701f
然而,当我运行“sudo易于得到更新”,它最终失败说“无法抓取......”
可能有人弄清楚是怎么回事?我需要做什么才能正确安装调试符号包?
编辑: 我的关键问题是我生成的火焰图没有Java符号,因此我最终关注了上面的错误/消息。以下接受的答案为我原来的帖子提供了一个非常好的解释。不过,我可以通过运行jmaps来解决我的问题,如下图所示:
sudo perf record -F 997 -a -g -- sleep 300; jmaps
这上面共享幻灯片共享链接指令进行了说明。
*“也许安装调试软件包?”* – Jakuje
是的,这就是它所说的,我不知道如何可以正确安装它。 – pree
http://manpages.ubuntu.com/manpages/precise/en/man1/debuginfo-install.1.html – Jakuje