TimeBasedRollingPolicy nicht Rollen, es sei denn, es gibt neue Protokolle

Hier ist meine config:

<appender name="myAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <append>true</append>
    <file>mylogs.log</file>
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
        <!-- daily rollover -->
        <fileNamePattern>mylogs-%d{yyyy-MM-dd_HH-mm}.log</fileNamePattern>

        <!-- keep 30 days' worth of history -->
        <maxHistory>30</maxHistory>
    </rollingPolicy>

    <encoder>
        <pattern>%d{HH:mm:ss.SSS} %-5level %logger{36} [%thread] - %M:%L - %msg%n</pattern>
    </encoder>
    <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
        <level>INFO</level>
    </filter>
</appender>

Entsprechend der logback - Dokument finden Sie hier (http://logback.qos.ch/manual/appenders.html#TimeBasedRollingPolicy) , Datei-rollover jede minute, basierend auf meinen %d{yyyy-MM-dd_HH-mm} fileNamePattern.

Beobachtete ich, wie das funktioniert und hier sind meine Ergebnisse:

  • Es nicht eine log-Datei erstellen sehr minute.
  • Es nur eine log-Datei erstellen, die für die vorherigen minute, wenn die ein neues Protokoll kommt. (z.B. ich habe ein Protokoll auf 11:53pm, und es ist jetzt 11:55 Uhr, ist es nicht erstellen Sie eine neue log-Datei wird sofort für die 11:53pm wenn es schlägt 11:54pm, aber wenn Sie ein neues Protokoll kam erst später, sagen wir um 11:56 Uhr, es erstellt jetzt die Datei für 11:53pm.)

Bin ich etwas fehlt, ich dachte, es wird eine log-Datei erstellen jede minute?

InformationsquelleAutor der Frage lorraine | 2014-03-05

Schreibe einen Kommentar