第 3 章 诊断性能问题
3.1. 启用 Garbage Collection Logging 复制链接链接已复制到粘贴板!
检查垃圾回收日志在尝试对 Java 性能问题进行故障排除时很有用,特别是与内存用量相关的问题。
除了用于写入日志文件的一些额外磁盘 I/O 活动外,启用垃圾回收记录不会影响服务器性能。
在 OpenJDK 或 Oracle JDK 上运行的独立 JBoss EAP 服务器,已默认启用垃圾回收日志记录。对于 JBoss EAP 受管域,可以为主机控制器、流程控制器或个别 JBoss EAP 服务器启用垃圾回收日志记录。
获取正确的 JVM 选项,以为您的 JDK 启用垃圾回收日志记录。将以下选项中的路径替换为您希望创建日志的位置。
注意红帽客户门户具有一个 JVM Options 配置工具,可帮助您生成最佳 JVM 设置。
对于 OpenJDK 8 或 Oracle JDK 8:
-verbose:gc -Xloggc:<path_to_directory>/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=3M -XX:-TraceClassUnloading
-verbose:gc -Xloggc:<path_to_directory>/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=3M -XX:-TraceClassUnloadingCopy to Clipboard Copied! Toggle word wrap Toggle overflow 对于 OpenJDK、Oracle JDK 或支持 JEP 271 的 JDK 版本:
-Xlog:gc*:file=<path_to_directory>/gc.log:time,uptimemillis:filecount=5,filesize=3M
-Xlog:gc*:file=<path_to_directory>/gc.log:time,uptimemillis:filecount=5,filesize=3MCopy to Clipboard Copied! Toggle word wrap Toggle overflow 对于 IBM JDK:
-Xverbosegclog:<path_to_directory>/gc.log
-Xverbosegclog:<path_to_directory>/gc.logCopy to Clipboard Copied! Toggle word wrap Toggle overflow
将垃圾回收 JVM 选项应用到您的 JBoss EAP 服务器。
有关如何将 JVM 选项 应用到 受管域中的单机服务器或服务器 的说明,请参阅 JBoss EAP 配置指南。
其他资源
- 有关 JEP 271 的更多信息,请参阅 OpenJDK 网页上的 JEP 271: Unified GC Logging。