1
嗨有什么方式设置应用程序启动时滚动日志或如果是新的一天,并保持30天或1个月的历史记录(不是30个文件)由配置文件。我找了几个小时,但没有找到任何东西。可能这种方式不存在,需要写。Logback - 如何通过配置文件设置新的开始和新的日志
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d [%thread] %-5level %logger{50} - %msg%n
</pattern>
</encoder>
</appender>
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>/logs/server.log</file>
<encoder>
<pattern>%d [%thread] %-5level %logger{50} - %msg%n
</pattern>
</encoder>
<!-- Join this time based rolling with-->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>/logs/server.%d{yyyy-MM-dd}.log.zip</fileNamePattern>
<!-- Mean 30 days not 30 files -->
<maxHistory>30</maxHistory>
</rollingPolicy>
<!-- New start baser Rolling-->
...
</appender>
<root level="INFO">
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
</root>
</configuration>
轧制时每天完成,30个文件就相当于30天。因此,我不确定我是否理解你的问题。 – Ceki
我需要对START和NEW DAY做出反应。所以当我在当天开始几次时,会有更多的文件。像这样:30天= 30个文件+ 10个重新启动= 10个文件=> 40个月的文件。我想保留所有这些文件,除非有30天以上的旧文件(我在创建文件时取日期) – Perlos
查看上面的配置文件,我可以肯定的是,当您重新启动应用程序时,您将*不*拥有新的日志文件。 – Ceki