我想知道可视化分析和监控java gc.log文件的最好方法是什么。
到目前为止,GCViewer是我发现的最有趣的工具,但我想知道是否有更好的或更好的解决方案来监视多个远程gc.log文件。
发布于 2012-01-12 20:40:50
我认为分析垃圾收集器日志最有效的方法是查看输出本身。我们的生产服务器全部使用并发标记清除收集器运行,并且我使用选项-Xloggc:$GCLOGFILE -XX:+PrintGCDetails运行日志,如果环境运行时遇到问题
我通常也会查看线程列表,检查垃圾收集器消耗的cpu时间。我用-p <java-pid>参数运行top,然后按"H“,这样你就可以看到消耗cpu时间最多的pids了。然后可以将其与线程转储进行匹配,以查看GC线程是否是最耗时的线程。每个线程都有一个显示在线程转储中的pid,它是十六进制的,这可以与顶部的pid匹配。
查看GC消耗的cpu时间并将其与您的日志输出进行匹配是非常重要的。我尝试了GCViewer几次,但从未从GC数据的可视显示中获得有用的提示。
发布于 2012-01-12 20:29:32
您可以使用JDK中包含的jconsole工具。或者,当您运行java应用程序时,可以使用参数"-verbose:gc“。
发布于 2012-01-12 21:02:22
我认为您可以使用选项在日志文件中记录gc活动:
-verbose:gc -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -Xloggc:gc.log
您可以使用HPJmeter等软件来利用此日志
https://stackoverflow.com/questions/8835052
复制相似问题