2017-10-02 12 views

答えて

1

あなたは...

は毎日.logファイルを作成し、30個のファイル

を保つ... TimeBasedRollingPolicyRollingFileAppenderを使用することができます。ここでは例です:

<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> 
    <file>logFile.log</file> 
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> 
     <!-- daily rollover --> 
     <fileNamePattern>logFile.%d{yyyy-MM-dd}.log</fileNamePattern> 
     <!-- retain 30 days logs --> 
     <maxHistory>30</maxHistory> 
    </rollingPolicy> 

    <encoder> 
     <pattern>...</pattern> 
    </encoder> 
    </appender> 

しかし、その後、これを行います何Logbackアペンダはありません。

は1つのzipファイルにファイルを圧縮し、そのために再び

.logの作成を開始あなたはできる:

  • あなた自身のアペンダーを書く(in the docsの詳細)

または

  • この外部Logbackハンドル。あなたはファイルシステム上のファイルを処理していますので、最後のファイルnのすべてを見つけて、それらを圧縮して削除した後、それらを削除するというシェルスクリプトを実行するcronジョブがトリックを行います。
+0

ありがとうございます。私はすでに同じソリューションに来ている..私はそれがログバックの設定だけでそれを行う方法があるのだろうかと思っていた。私はFixedWindowRollingPolicyを使用することを考えていたが、私の場合には合わない。 ありがとうございます。 –

関連する問題