2016-09-28 3 views
0

時間単位でファイルを展開し、最大3ファイルを保持したい場合は、以下の設定が必要です。しかし、正しく実行されていません。誰でも助けることができます。log4j2のmax指定ファイルで1時間ごとにファイルを展開する方法

<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> 

答えて

0

正確には機能していないものは何も言及していません。あなたの設定によると、私はあなたが常に単一のロールファイルを持っていると推測します。これは、インデックス付きのファイルパターンを定義していないために発生します。ファイルパターンにインデックスを追加します。

<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> 

最大3つのロールファイルが保持されます。より高いインデックスを持つファイルは、より小さなインデックスを持つファイルより新しいでしょう。

関連する問題