2017-01-04 13 views
0

ログファイルを1時間ごとにローテーションし、置き換える前にn日間保管します。たとえば、2日と言えます。つまり、totalSizeCapが満たされない場合、48個のログファイルが表示されます。私は何を得るLogbackを設定してn日間毎時ファイルをローテーションできます。

<appender name="missing_fields" class="ch.qos.logback.core.rolling.RollingFileAppender"> 
<file>logs/missing_fields.log</file> 
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> 
    <fileNamePattern>logs/missing_fields_%d{yyyyMMdd-HH}.log</fileNamePattern> 
    <maxHistory>**48**</maxHistory> 
    <totalSizeCap>1GB</totalSizeCap> 
</rollingPolicy> 
<encoder> 
    <pattern>%date#%level#%logger#thread#%message%n%xException</pattern> 
</encoder> 

ログファイルは毎時間、回転だけで24時間していることです。それ以降は、48時間保管するのではなく、ファイルの置き換えが開始されます。

など。 missing_field_20170104-10.log と1日後 missing_field_20170105-10.log、

を、それが唯一の24時間のログファイルを維持しながら:私は見ることを期待します。

答えて

0

documentationによると、あなたは私が行っているが、それは動作していないものですそれ

<maxHistory>48</maxHistory> 
+0

にあなたの設定を変更する必要があります。 \ ** 48 \ **は強調するためでした。それは24個のログファイルを作成してから置き換えを開始するだけです。それは意味をなさないでしょうか?ありがとう – highlander

関連する問題