2012-02-09 4 views
0

J'ai un fichier de configuration de log4j xml comme ceci:Log4j taille du fichier de roulement

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> 
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> 
    <appender name="CA" class="org.apache.log4j.ConsoleAppender"> 
     <layout class="org.apache.log4j.PatternLayout"> 
      <param name="ConversionPattern" value="KTS %5p [%F] - %m%n"/> 
     </layout> 
    </appender> 
    <appender name="EXCEPTION" class="org.apache.log4j.RollingFileAppender"> 
     <param name="file" value="C:\\exception.log"/> 
     <param name="MaxFileSize" value="20MB"/> 
     <param name="MaxBackupIndex" value="5"/> 
     <layout class="org.apache.log4j.PatternLayout"> 
      <param name="ConversionPattern" value="%d{dd-MM-yyyy HH:mm:ss,SSS} KTS %5p [%F] - %m%n"/> 
     </layout> 
     <filter class="org.apache.log4j.varia.LevelMatchFilter"> 
      <param name="LevelToMatch" value="ERROR"/> 
      <param name="AcceptOnMatch" value="true"/>       
     </filter> 
     <filter class="org.apache.log4j.varia.DenyAllFilter"/> 
    </appender> 
    <appender name="TIMER" class="org.apache.log4j.RollingFileAppender"> 
     <param name="file" value="C:\\timer.log"/>  
     <param name="MaxFileSize" value="20MB"/> 
     <param name="MaxBackupIndex" value="5"/>  
     <layout class="org.apache.log4j.PatternLayout"> 
      <param name="ConversionPattern" value="%d{dd-MM-yyyy HH:mm:ss,SSS} KTS %5p [%F] - %m%n"/> 
     </layout> 
     <filter class="org.apache.log4j.varia.LevelMatchFilter"> 
      <param name="LevelToMatch" value="INFO"/> 
      <param name="AcceptOnMatch" value="true"/>       
     </filter> 
     <filter class="org.apache.log4j.varia.DenyAllFilter"/> 
    </appender> 
    <root> 
     <level value="debug"/> 
     <appender-ref ref="CA"/> 
     <appender-ref ref="TIMER"/> 
     <appender-ref ref="EXCEPTION"/> 
    </root> 
</log4j:configuration> 

Le problème que je vais avoir est que la taille du fichier sont passe Que la taille du fichier créé ...

Toutes les idées pourquoi cela pourrait-il arriver? Essayez d'ajouter l'attribut log4j: configuration pour le débogage.

Répondre

0

Désolé, mais j'ai déjà résolu ce problème et j'ai oublié de mettre la réponse ici.

Le problème était dû au fait que je devais redémarrer l'application, certains threads n'étaient pas détruits, bloquant le fichier journal.

Merci pour votre aide de toute façon

0

Par exemple.

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

<!-- something --> 

</log4j:configuration> 

Les informations de débogage sont écrites sur la console.

0

Pouvez-vous essayer d'affecter MaxBackupIndex first and MaxFileSize` plus tard. Si cette configuration fonctionne

<appender name="TIMER" class="org.apache.log4j.RollingFileAppender"> 
    <param name="file" value="C:\\timer.log"/>  
      <param name="MaxBackupIndex" value="5"/>  
      <param name="MaxFileSize" value="20MB"/> 
    <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" value="%d{dd-MM-yyyy HH:mm:ss,SSS} KTS %5p [%F] - %m%n"/> 
    </layout> 
    <filter class="org.apache.log4j.varia.LevelMatchFilter"> 
     <param name="LevelToMatch" value="INFO"/> 
     <param name="AcceptOnMatch" value="true"/>       
    </filter> 
    <filter class="org.apache.log4j.varia.DenyAllFilter"/> 
</appender>