我想爲我的應用程序收集一些性能分析數據,然後運行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