java8u162环境_java - 日志文件未使用log4j 1.2.17和java8u162进行翻转 - 堆栈内存溢出...

我们在生产环境中面临一个问题,在某些情况下,日志文件不会被翻转。 我们将Log4j版本1.2.17与apache.commons-logging一起使用。 创建一个自定义的附加程序,以将文件翻转。 附加程序正在扩展Log4j的FileAppender。 这是subAppend(LoggingEvent event)方法的算法:

long n = System.currentTimeMillis();

// Has the time come to roll the log file?

if (n >= nextCheck)

{

now.setTime(n);

nextCheck = rc.getNextCheckMillis(now);

rollOver();

reachedMaxSize = false;

else

{

File f = new File(getFile());

// Has the log file has exceeded its maximum size?

if (!reachedMaxSize && f.length() > maxFileSize)

{

// Log file has reached it maximum size.

reachedMaxSize = true;

// Log one last message to the file stating the max has been reached.

LoggingEvent exeededEvent = new LoggingEvent(

getClass().getName(),

Logger.getLogger(getClass().getName()),

Priority.ERROR,

"Maximum log file size has been reached ("+maxFileSize/1024+"KB)",

null);

super.subAppend(exeededEvent);

}

// If the log has not reached its max size, write it. Otherwise,

// send log event to stdout.

if (!reachedMaxSize)

{

super.subAppend(event);

}

else

{

System.out.println(event.getRenderedMessage());

}

这是Log4j.properties文件

log4j.rootLogger=INFO,RCFLog

log4j.appender.RCFLog=com.ge.medit.util.logging.MaxFileSizeRollingFileAppender

log4j.appender.RCFLog.File=runtime/logs/rcf.log

log4j.appender.RCFLog.DatePattern=yyyyMMdd'_'{0}

log4j.appender.RCFLog.Encoding=UTF-8

log4j.appender.RCFLog.Append=true

log4j.appender.ConsoleLog=org.apache.log4j.ConsoleAppender

log4j.appender.ConsoleLog.layout=org.apache.log4j.PatternLayout

log4j.appender.ConsoleLog.layout.ConversionPattern=%p [%t] %c{1}: %m%n

log4j.appender.RCFLog.layout=org.apache.log4j.PatternLayout

log4j.appender.RCFLog.layout.ConversionPattern=@%d{yyyyMMdd HH:mm:ss.SSS}@ %p {%t} %c{1}: %m%n

log4j.logger.GUIEVT=INFO

根据观察,系统上有日期更改。 该日期设置为当前日期之前的3个月。

Current Date- 10th May 2018

nextCheck - 11th May 2018 00:00

Changed Date- 10th March 2018

No backup is created as a condition at line 3 failed.

5月11日再次经过12小时后,该日期更改为当前日期。 到那时,文件的时间戳更改为3月10日。 由于没有RollOver,下一张支票仍然是2018年5月11日00:00。 但是在5月12日00:00,该文件应该已经按照第3行的条件进行了翻转,并且应该已经创建了一个新文件,但没有发生。 此外,文件已达到最大大小。 从那时起,没有日志,直到重新启动系统为止。

Java版本是java8u162 。 虽然我找不到任何帖子说它是否与java有关。

我尝试在测试环境中重现相同的场景,但是一切正常。

有没有人遇到过Log4j这样的问题? 请分享您的意见。 提前致谢。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
apache-log4j-1.2.15.jar, apache-log4j-extras-1.0.jar, apache-log4j-extras-1.1.jar, apache-log4j.jar, log4j-1.2-api-2.0.2-javadoc.jar, log4j-1.2-api-2.0.2-sources.jar, log4j-1.2-api-2.0.2.jar, log4j-1.2.11.jar, log4j-1.2.12.jar, log4j-1.2.13-sources.jar, log4j-1.2.13.jar, log4j-1.2.13.src.jar, log4j-1.2.14-sources.jar, log4j-1.2.14.jar, log4j-1.2.15-sources.jar, log4j-1.2.15.jar, log4j-1.2.16-sources.jar, log4j-1.2.16.jar, log4j-1.2.5.jar, log4j-1.2.6.jar, log4j-1.2.7.jar, log4j-1.2.8.jar, log4j-1.2.9.jar, log4j-1.2.91.jar, log4j-1.2.jar, log4j-1.2rc1.jar, log4j-1.3alpha-7.jar, log4j-api-2.0.2-javadoc.jar, log4j-api-2.0.2-sources.jar, log4j-api-2.0.2.jar, log4j-boot.jar, log4j-bridge-0.9-sources.jar, log4j-bridge-0.9-tests.jar, log4j-bridge-0.9.4-sources.jar, log4j-bridge-0.9.4-tests.jar, log4j-bridge-0.9.4.jar, log4j-bridge-0.9.6-sources.jar, log4j-bridge-0.9.6-tests.jar, log4j-bridge-0.9.6.jar, log4j-bridge-0.9.jar, log4j-config.jar, log4j-core-2.0.2-javadoc.jar, log4j-core-2.0.2-sources.jar, log4j-core-2.0.2-tests.jar, log4j-core-2.0.2.jar, log4j-core.jar, log4j-ext.jar, log4j-flume-ng-2.0.2-javadoc.jar, log4j-flume-ng-2.0.2-sources.jar, log4j-flume-ng-2.0.2.jar, log4j-java1.1.jar, log4j-jcl-2.0.2-javadoc.jar, log4j-jcl-2.0.2-sources.jar, log4j-jcl-2.0.2.jar, log4j-jmx-gui-2.0.2-javadoc.jar, log4j-jmx-gui-2.0.2-sources.jar, log4j-jmx-gui-2.0.2.jar, log4j-nosql-2.0.2-javadoc.jar, log4j-nosql-2.0.2-sources.jar, log4j-nosql-2.0.2.jar, log4j-over-slf4j-1.5.0.jar, log4j-over-slf4j-1.5.10.jar, log4j-over-slf4j-1.5.3.jar, log4j-over-slf4j-1.5.5.jar, log4j-over-slf4j-1.5.6-sources.jar, log4j-over-slf4j-1.5.6.jar, log4j-over-slf4j-1.5.8-sources.jar, log4j-over-slf4j-1.5.8.jar, log4j-over-slf4j-1.6.1.jar, log4j-slf4j-impl-2.0.2-javadoc.jar, log4j-slf4j-impl-2.0.2-sources.jar, log4j-slf4j-impl-2.0.2.jar, log4j-snmp-appender.jar, log4j-taglib-2.0.2-javadoc.jar, log4j-taglib-2.0.2-sources.jar, log4j-taglib-2.0.2.jar, log4j-to-slf4j-2.0.2-javadoc.jar, log4j-to-slf4j-2.0.2-sources.jar, log4j-to-slf4j-2.0.2.jar, log4j-web-2.0.2-javadoc.jar, log4j-web-2.0.2-sources.jar, log4j-web-2.0.2.jar, log4j-wjw.jar, log4j-xml-1.3alpha-7.jar, log4j.jar, org.apache.log4j_1.2.15.v201005080500.jar, org.apache.log4j_1.2.15.v201012070815.jar
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值