logback保留一年日志

背景

网上不能直接找到logback保留一年日志的配置,因此写了此文

maxHistory

在Java的Logback日志框架中,"maxHistory"是一个用于配置日志文件保留期限的属性。它允许你设置日志文件的最大保留期限,以天为单位。

例如,如果你希望在30天后自动删除旧的日志文件,你可以将maxHistory设置为30。这意味着Logback将在每天检查当前日志文件是否达到了30天的保留期限,并在达到期限后自动删除该文件。

保留366天同时限制每个为20M

<configuration>
    <appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <encoder>
            <pattern>%d{MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} [%method] [%line] - %msg%n</pattern>
            <charset>UTF-8</charset>
        </encoder>
        <rollingPolicy
                class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <FileNamePattern>/var/log/service.%d{yyyy-MM-dd}.%i.log
            </FileNamePattern>
            <maxFileSize>20MB</maxFileSize>
            <maxHistory>366</maxHistory>
            <!--            <totalSizeCap>500MB</totalSizeCap>-->
        </rollingPolicy>
    </appender>
    <root level="INFO">
        <appender-ref ref="file"/>
    </root>
</configuration>

以上配置未经测试,经过测试的是把文件大小maxFileSize设为1MB,maxHistory设为5,实测当天产生文件超过900+未出现覆盖,推测可实现保留一年日志

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Logback 是一个 Java日志框架,可以用来控制日志的输出。它支持多种日志级别,可以通过配置文件来控制日志的输出方式。 Logback 的配置文件是一个 XML 文件,通常命名为 `logback.xml`。下面是一个简单的 Logback 配置文件的例子: ```xml <configuration> <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>%-5level %logger{35} - %msg%n</pattern> </encoder> </appender> <root level="debug"> <appender-ref ref="STDOUT" /> </root> </configuration> ``` 这个配置文件定义了一个名为 `STDOUT` 的输出器,它将日志输出到控制台。`<encoder>` 元素定义了日志输出的格式,`%-5level` 表示日志级别,`%logger{35}` 表示日志记录器的名称,`%msg%n` 表示日志消息和换行符。 `<root>` 元素定义了日志的根级别,这里设置为 `debug`,表示输出所有级别的日志。`<appender-ref>` 元素将输出器 `STDOUT` 添加到根记录器中。 Logback 支持多种日志级别,从低到高分别是 TRACE、DEBUG、INFO、WARN、ERROR 和 FATAL。可以通过设置日志级别来控制日志的输出。例如,如果只想输出 WARN 级别以上的日志,可以将根级别设置为 WARN: ```xml <root level="warn"> <appender-ref ref="STDOUT" /> </root> ``` 这样,INFO 和 DEBUG 级别的日志就不会被输出了。 除了根级别外,还可以为每个记录器单独设置日志级别。例如,可以将某个记录器的级别设置为 DEBUG,而其他记录器的级别设置为 INFO: ```xml <logger name="com.example" level="debug" /> ``` 这样,名为 `com.example` 的记录器就会输出 DEBUG 级别的日志Logback 还支持多种输出方式,例如文件、邮件等。可以通过配置文件来定义这些输出方式。详细的配置方法可以参考 Logback 的官方文档。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值