2010-12-03 65 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。