2014-12-01 72 views
0

我有一个关于在glassfish 4服务器上运行的亚马逊ec2的web服务器,我试图连接visualvm到服务器,但它是不可能的,所以我遵循本教程(http://looksok.wordpress.com/2012/02/10/remote-use-of-visualvm-with-xming/),我安装插件glassfish服务器jvisualvm,现在我可以监视玻璃鱼,但我不能做堆转储来查看我的应用程序使用的内存细节。 我该怎么办?在visualvm玻璃鱼堆转储

Error trying heap dump

+0

您是否尝试在应用程序窗口中右键单击该应用程序并选择堆转储? – 2014-12-01 17:52:35

+0

我编辑我的问题并发布屏幕截图。我尝试在左侧菜单上右键单击glassfish,然后选择堆转储,但是它显示了我可以在屏幕截图中看到的错误。 – RoberV 2014-12-02 17:54:13

+0

你可能没有权限采取堆转储。你是否以特权用户的身份运行该进程? – 2014-12-02 19:38:38

回答

1

可以使用jmap工具JDK中创建一个HPROF格式堆转储: http://docs.oracle.com/javase/6/docs/technotes/tools/share/jmap.html

举个例子,在上面的截图你的GlassFish的PID,命令将如下:

jmap -dump:file=/path/to/my/dumpfile.hprof 1376 

你也可以使用jps查找进程ID:

jps -v 

-v标志使输出详细,给你更多的信息来告诉哪个进程是正确的。