2010-12-03 112 views
21

是否有允許離線分析(包括摘要/排序/篩選).hprof文件的工具?或者你可以在批處理模式下運行VisualVM,帽子等?分析離線Java堆轉儲(.hprof)的工具或技巧

我感興趣的東西,可以採取輸入.hprof文件,緊縮它,並生成報告。

我假設你需要在一堆選項來配置報告通過,因此,如果您知道任何有用的提示,請權衡。

最好編寫腳本,所以我可以一次運行一堆。

+0

「脫機」是指「無頭」嗎?我認爲「離線」意思是「在正在運行的JVM實例的上下文之外」。 – 2010-12-03 18:34:09

回答

1

你可以使用jmap -histo嗎?你想要提取什麼類型的報告?

+2

jmap -histo對.hprof文件不起作用;它期望一個pid – user331465 2010-12-03 16:38:26

+0

基本上任何有助於識別內存泄漏的東西。我不會說「最大的物體」 - 這既淺又深。 – user331465 2010-12-03 16:49:36

11

您可以使用jhat解析/導航的.hprof文件的內存轉儲。

$ jhat heapdump.hprof 
Reading from heapdump.hprof... 

Started HTTP server on port 7000 
Server is ready. 

該工具附帶JDK。