我想知道可视化分析和监视 java gc.log 文件的最佳方法是什么。
GCViewer是迄今为止我发现的最有趣的工具,但我想知道是否有更好的或好的解决方案来监视多个远程 gc.log 文件。
最佳答案
我认为分析垃圾收集器日志的最有效方法是查看输出本身。我们的生产服务器都使用 Concurrent Mark Sweep Collector 运行,我的日志使用选项 -Xloggc:$GCLOGFILE -XX:+PrintGCDetails
运行。如果环境遇到问题我
我通常还会查看线程列表并检查垃圾收集器消耗的 cpu 时间。我通过使用
-p <java-pid>
运行 top 来做到这一点。参数,然后按“H”,这样您就可以看到消耗最多 cpu 时间的 pid。然后可以将其与线程转储相匹配,以查看 gc 线程是否是最耗时的线程。每个线程都有一个显示在线程转储中的 pid,它是十六进制的,这可以与顶部的 pid 匹配。查看 GC 消耗的 cpu 时间并将其与您的日志输出相匹配非常重要。我多次尝试 GCViewer,但从未真正从 GC-Data 的视觉显示中得到有用的提示。
关于java - 如何从 JVM 分析和监控 gc.log 垃圾收集器日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8835052/