2015-04-20 109 views
1

问题我观察码头访问日志:写入.tmp文件

在一天的随机时间,日志开始将.tmp文件 access.log6732547707051856.tmp(其中有从00:00:00至00日志: 00:01,这是可以接受的,我猜是发生翻滚时)和access.log6844458502795078.tmp是两个有日志的文件。

记录器继续登录到最新的tmp文件。我观察到一个案例,它在大约早上6点开始写入.tmp文件并继续在那里写入。 这会在下一个滚动处停止,即在access.log文件被压缩的00:00:00(午夜)。 .tmp文件在此之后仍然保留。

  1. 为什么临时文件不会消失?
  2. 为什么在翻转不应该发生的时候写入临时文件?系统

详情:

码头的版本我使用:8.1.15

我实例化一个新RequestLogHandler与

RequestLogImpl requestLog = new RequestLogImpl(); 
requestLog.setFileName("logback-access.xml"); 
requestLogHandler.setRequestLog(requestLog); 

logback-access.xml

<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> 
     <fileNamePattern>/var/log/service/package/access-%d{yyyy-MM-dd}.log.gz</fileNamePattern> 
     <maxHistory>10</maxHistory> 
    </rollingPolicy> 
+0

我们遇到了同样的问题。任何想法如何解决它? – Tuanitim

+0

@Tuanitim禁用gzip压缩工作。我们禁用了它,我们可以通过更频繁的备份来减少maxHistory。 –

+0

谢谢。那么,禁用gzip压缩并不是我们所期望的,对吧? – Tuanitim

回答