我使用这个 jvm 选项来创建 gc 日志并启用滚动:
$ java -Xloggc:gc.log -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 XX:GCLogFileSize=128K
但是,当我重新启动应用程序时出现问题。重启后,第一个日志文件 gc.log.0
被覆盖,该文件的数据未滚动到 gc.log.1
,因此丢失。
我想知道我是否正确,是否有解决方案。
提前致谢!
最佳答案
您也可以为此使用 java 自己的时间戳:
java -Xloggc:gc-%t.log ...(rest of your line)...
%t
将被 java 替换为时间戳(有关信息和 -Xloggc
关于java - GC 日志旋转数据在应用程序重启时丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19274153/