2016-09-28 7 views
0

Je veux déployer le fichier sur une base horaire et que vous voulez garder le fichier max 3, ci-dessous sont la configuration. Mais ce n'est pas l'exécution correctement. Quelqu'un peut-il aider.comment déployer le fichier toutes les heures avec les fichiers max donnés dans log4j2

<RollingFile name="LogFile" fileName="logs/server.log" immediateFlush="false" append="true" 
     filePattern="logs/server-%d{yyyy-MM-dd-HH}.log"> 
     <PatternLayout> 
      <Pattern>&lt;%d{MMM d, yyyy hh:mm:ss a}&gt; &lt;%5p&gt; - %m%n</Pattern> 
     </PatternLayout> 
     <Policies> 
       <TimeBasedTriggeringPolicy interval="1" modulate="true"/> 
       <!-- <SizeBasedTriggeringPolicy size="5 KB" /> --> 
     </Policies> 
     <DefaultRolloverStrategy max="3" /> 
</RollingFile> 

Répondre

0

Vous n'avez pas mentionné ce qui ne fonctionne pas. Selon votre configuration je suppose, que vous avez toujours un seul fichier roulé. Cela arrive parce que vous n'avez pas défini de motif de fichier avec un index. Ajoutez un index dans le modèle de fichier:

<RollingFile name="LogFile" fileName="logs/server.log" immediateFlush="false" append="true" 
    filePattern="logs/server-%d{yyyy-MM-dd-HH}-%i.log"> 
    ... 
    <Policies> 
     <TimeBasedTriggeringPolicy interval="1" modulate="true"/> 
    </Policies> 
    <DefaultRolloverStrategy max="3"/> 
</RollingFile> 

Jusqu'à trois fichiers compressés seront conservés; les fichiers avec un index plus élevé seront plus récents que les fichiers avec un index plus petit.