2016-06-13 15 views
0

Ich habe eine log4.xml-Datei, die ich für benutzerdefinierte Protokollierung verwendenLog4j zu Log4j2 Umwandlung

<?xml version="1.0" encoding="UTF-8" ?> 
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> 

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> 

    <!-- Console appender --> 
    <appender name="ConsoleAppender" class="org.apache.log4j.ConsoleAppender"> 
     <param name="threshold" value="INFO"/> 
     <layout class="org.apache.log4j.PatternLayout"> 
      <param name="ConversionPattern" value="&lt;%-4d{DATE}&gt; &lt;%-4p&gt; &lt;%t&gt; &lt;%m&gt; %n" /> 
     </layout> 
    </appender> 

    <!-- File appender --> 
    <appender name="FileAppender" class="org.apache.log4j.DailyRollingFileAppender"> 
     <param name="threshold" value="INFO"/> 
     <param name="File" value="test/logs/app.log" /> 
     <param name="Append" value="true" /> 
     <param name="MaxFileSize" value="64MB" /> 
     <param name="MaxBackupIndex" value="2" /> 
     <layout class="org.apache.log4j.PatternLayout"> 
      <param name="ConversionPattern" value="&lt;%-4d{DATE}&gt; &lt;%-5p&gt; &lt;%t&gt; &lt;%m&gt; %n" /> 
     </layout> 
    </appender> 

    <root> 
     <priority value="INFO" /> 
     <appender-ref ref="FileAppender" /> 
     <appender-ref ref="ConsoleAppender" /> 
    </root> 

</log4j:configuration> 

Ich brauche dies zu konvertieren mit dem folgenden log4j2 und sind gekommen, aber ich bin nicht sicher, ob dies richtig

<?xml version="1.0" encoding="UTF-8"?> 
    <Configuration> 
    <!-- Console appender --> 
    <Parameters> 
     <param name="MaxBackupIndex" value="2"/> 
    </Parameters> 
    <Appenders> 
     <Console name="ConsoleAppender" target="SYSTEM_OUT"> 
      <PatternLayout pattern="&lt;%-4d{DATE}&gt; &lt;%-4p&gt; &lt;%t&gt; &lt;%m&gt; %n"/> 
     </Console> 
     <!-- File appender --> 
     <RollingFile name="DAILY_LOG" fileName="test/logs/app.log" 
        filePattern="app.log.%d{yyyy-MM-dd-hh-mm}.gz" 
> 
      <PatternLayout pattern="&lt;%-4d{DATE}&gt; &lt;%-5p&gt; &lt;%t&gt; &lt;%m&gt; %n"/> 
      <Policies> 
       <SizeBasedTriggeringPolicy size="64MB" /> 
       <TimeBasedTriggeringPolicy interval="1"/> 
      </Policies> 
     </RollingFile> 
    </Appenders> 
    <Loggers> 
     <Logger name="org.apache.log4j.xml" level="info"/> 
     <Root level="info"> 
      <AppenderRef ref="ConsoleAppender"/> 
      <AppenderRef ref="FileAppender"/> 
     </Root> 
    </Loggers> 

    </Configuration> 

Wer weiß, ob ich hier richtig oder auf dem richtigen Weg bin? Es scheint nicht zu funktionieren

Antwort

0

Wenn Sie dies jeden Tag rollen wollen, dann sollten Sie kein Dateimuster mit Stunden und Minuten darin verwenden. Wenn die Datei jedoch Stunden und Minuten enthalten soll, verwenden Sie die CronTriggeringPolicy anstelle der TimeBasedTriggeringPolicy.

+0

Nein, ich will kein Dateimuster mit Stunden und Minuten Ich will es sein, zum Beispiel 'app.log' für das aktuelle Protokoll, dann' app.log.2016-06-13', 'app.log .2016-06-12 'seit Tagen – user3520080