在GlassFish 2.x中启用垃圾收集日志记录

时间:2011-01-28 16:04:26

标签: java java-ee garbage-collection glassfish

我需要收集GlassFish 2.x服务器的垃圾收集信息的日志。仅使用VisualVM或其他此类工具是不够的,因为我需要在很长一段时间内而不是一次性收集信息。

在我对此问题的所有搜索中,一致意见是您添加了以下JVM选项:

-verbose:gc
-XX:+PrintGCTimeStamps
-XX:+PrintGCDetails

在GlassFish管理控制台中,我转到...

Configurations->[my cluster name]->JVM Settings->JVM Options

...并使用“Add JVM Option”按钮添加三个与上面列表匹配的新选项。

但是,我从未在任何地方看到任何GC记录。我的域名的“jvm.log”或“server.log”文件中没有任何内容...当我使用“--verbose”选项启动我的域名时,没有任何GC信息显示在控制台输出。

我已检查了我的域的“domain.xml”文件,并且看起来GlassFish管理控制台 IS 正在编写这三个选项。只是为了咯咯笑,我尝试添加第四个“-Xloggc:/tmp/gc.log”选项,所以我知道记录信息应该去哪里......但是该文件也从未创建过。

我错过了一些非常明显的东西吗?

1 个答案:

答案 0 :(得分:0)

我不确定这是否是“正确”的答案,但我通过手动编辑“domain.xml”文件而不是使用管理控制台找到了成功。

该文件中有多个JVM参数节(或至少在此环境中就是这种情况)...并且管理控制台仅将这三个垃圾收集参数添加到其中一个节中。当我在文本编辑器中手动将它们添加到其他节时,它们会被正确的过程拾取并且记录工作。