2014-06-05 69 views
2

每天滾動這是我log4j2.xmlLog4j2 - Asynclogger滾動文件Appender的時速不

<?xml version="1.0" encoding="UTF-8"?> 
<Configuration status="OFF"> 

    <Appenders> 
      <!-- Generate STDOUT in console --> 
      <Console name="CONSOLE" target="SYSTEM_OUT"> 
        <PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n" /> 
      </Console> 

      <!-- Generate rolling log for router with per hour interval policy --> 
      <RollingFile name="RouterRollingFile" fileName="/apps/bea/mb-logs/router.log" 
        immediateFlush="false" filePattern="/apps/bea/mb-logs/router.%d{yyyy-MM-dd-HH}-%i.log"> 
        <PatternLayout> 
          <pattern>%d{yyyy-MM-dd HH:mm:ss} %5p [%t] (%F:%L) - %m%n</pattern> 
        </PatternLayout> 
        <Policies> 
          <TimeBasedTriggeringPolicy interval="1" modulate="true"/> 
        </Policies> 
        <!-- <DefaultRolloverStrategy fileIndex="max" max="24" /> --> 
      </RollingFile> 
    </Appenders> 

    <Loggers> 
      <AsyncLogger name="com.tritronik.mb.router" level="info" 
        additivity="false" includeLocation="true"> 
        <AppenderRef ref="RouterRollingFile" /> 
      </AsyncLogger> 
      <!-- <Root level="info"> 
        <appender-ref ref="CONSOLE" /> 
      </Root> --> 
    </Loggers> 

我想達到每小時滾動的每日滾動文件,到目前爲止,我還沒有能夠以適當的格式生成日誌,正如我所記得的那樣,interval參數似乎是按天而不是按小時遞增的。

我想要實現這個

router.log - >目前書面文件

router.log.2014-06-20-00

router.log.2014- 01年6月20日

...

router.log.2014-06-20-23

router.log.2014-06-21-00

...

相反,我做到這一點

router.log

router.log.2014-06- 20-1 - >一天的日誌價值

我已經能夠使用通常的log4j做到這一點,但io的性能下降,並迫使我使用log4j2,但我偶然發現這個問題。

我哪裏有錯?或者是否log4j2不支持這個呢?

謝謝

回答

1

您可能已經找到了錯誤。

這是隻發生在異步記錄器或配置一個普通(同步)記錄器?

另外,你有沒有嘗試過使用如下所示的filePattern: filePattern="/apps/bea/mb-logs/$${date:yyyy-MM-dd}/router.%d{yyyy-MM-dd-HH}.log"? 我有一個(不可否認的)懷疑$$ {date:...}部分可能有關係。

如果上述兩者沒有任何區別,您能否請在log4j2問題跟蹤器上提交Jira票證? https://issues.apache.org/jira/browse/LOG4J2

+0

我已經創建了票https://issues.apache.org/jira/browse/LOG4J2-661 似乎它仍然給我相同的結果 – Lynx777