возможно ли иметь новый файл для каждого нового дня с log4cXX - PullRequest
2 голосов
/ 18 августа 2011

Я знаю параметр rollPolicy для файла конфигурации log4cxx, но мне не удается получить файл конфигурации, который может указывать регистратору создавать новый файл каждый новый день, как я могу достичь этого результата?

Ответы [ 2 ]

3 голосов
/ 18 августа 2011

Да.Использование стиля прокрутки Composite, например:

   <appender name="LogAppender" type="log4net.Appender.RollingFileAppender">
    <file type="log4j.Util.PatternString" value="LogFile.log" />
    <appendToFile value="true" />
    <rollingStyle value="Composite" />
    <datePattern value="yyyyMMdd" />
    <maxSizeRollBackups value="7" />
    <maximumFileSize value="100MB" />
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="%date{ISO8601}: [%2thread] %-5level %logger: '%P{network}.%P{node}' %message%newline" />
    </layout>
    </appender>

Ссылка:

Краткое введение в Apache log4cxx

log4net ConfigПримеры

0 голосов
/ 20 августа 2011

Я думаю, что следующий аппендер будет делать вещи (не могу проверить это на этом компьютере)

    <!-- the following appender with the name "TimeBasedLog.log", every night a few seconds after
     12::00PM the old log will be renamed with append the date in filename, and a new log file
     with the name "TimeBasedLog.log" will be create. 
     notice the RollingFileAppender is under "org.apache.log4j.rolling" namespace
-->
<appender name="MyRollingAppenderDaily" class="org.apache.log4j.rolling.RollingFileAppender">
    <rollingPolicy class="org.apache.log4j.rolling.TimeBasedRollingPolicy">
        <param name="FileNamePattern" value="TimeBasedLog.%d{yyyy-MM-dd}.log"/>
        <param name="activeFileName" value="TimeBasedLog.log"/>
    </rollingPolicy>

    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss,SSS} %x [%p] (%F:%L) %m%n"/>
    </layout> 
    <param name="file" value="TimeBasedLog.log"/>
    <param name="append" value="true"/>
</appender>

Мне интересно, возможно ли объединить внутри приложения одновременно основанную на времени прокрутку и функцию MaxFileSize / MaxBackupIndex?

        <param name="MaxFileSize" value="5KB"/>
    <param name="MaxBackupIndex" value="5"/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...