java - GC 日志旋转数据在应用程序重启时丢失

标签 java logging garbage-collection jvm-arguments

我使用这个 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

支持的其他格式,请参阅 https://bugs.openjdk.java.net/browse/JDK-6950794

关于java - GC 日志旋转数据在应用程序重启时丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19274153/

相关文章:

php - 在我的应用程序日志文件中写入PHP日志

c# - 页面加载后对象是否符合垃圾回收条件?

javascript - 使用 ng-repeat AngularJS 构建大表后,Internet Explorer 中的垃圾收集需要很长时间

java - 部署 SOAP 客户端时解决架构位置问题

java - Spring 安全 : user and admin login fails

java - 记录 log4j 和 Null 对象

linux - Activemq内存消耗高

java - 如何将二维字符串数组从java代码传递到play框架中的scala.html?

java - 为 jtable 单元格设置事件

python - 在 Python 中使用多处理时我应该如何记录?