SpringBoot 日志系统LogBack配置本地文件打印日志

SpringBoot 日志系统LogBack配置本地文件打印日志

原理

在使用SpringBoot的时候,我们每次启动的时候都会看到一大段日志信息,整合在一个项目中的不同框架即使使用不同日志系统但它们的日志信息都以统一的格式打印在控制台上,这就是SpringBoot为了统一日志做出的工作。

  • 直接将其他依赖以前的日志框架剔除
  • 导入对应日志框架的Slf4j中间包
  • 导入自己官方指定的日志实现,并作为Slf4j的日志实现层

注:Slf4j是日志门面,简单理解就是个模型,并非具体实现的日志系统,但提供提供了统一的日志使用接口

配置本地文件保存日志

在没有配置的情况下,SpringBoot默认将日志打印在控制台上,我们现在需要在文件中保存日志,那么我们就需要做以下操作

  • 先在resource文件夹下创建一个叫logback-spring.xml的配置文件
  • 按照给出的格式书写配置文件(这里使用的是springboot预设好的日志格式)
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <!--导入预设配置文件-->
    <include resource="org/springframework/boot/logging/logback/defaults.xml" />
    <!--这个是控制台打印的配置-->
    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>${CONSOLE_LOG_PATTERN}</pattern>
            <charset>${CONSOLE_LOG_CHARSET}</charset>
        </encoder>
    </appender>
    <!--下面是文件打印的配置-->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <encoder>
            <pattern>${FILE_LOG_PATTERN}</pattern>
            <charset>${FILE_LOG_CHARSET}</charset>
        </encoder>
        <!--  自定义滚动策略,防止日志文件无限变大,也就是日志文件写到什么时候为止,重新创建一个新的日志文件开始写  -->
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <!--  文件保存位置以及文件命名规则,这里用到了%d{yyyy-MM-dd}表示当前日期,%i表示这一天的第N个日志  -->
            <FileNamePattern>log/%d{yyyy-MM-dd}-spring-%i.log</FileNamePattern>
            <!--  到期自动清理日志文件  -->
            <cleanHistoryOnStart>true</cleanHistoryOnStart>
            <!--  最大日志保留时间  -->
            <maxHistory>7</maxHistory>
            <!--  最大单个日志文件大小  -->
            <maxFileSize>10MB</maxFileSize>
        </rollingPolicy>
    </appender>
    <!--最后在这里配置启用 -->
    <root level="INFO">
        <appender-ref ref="CONSOLE"/>
        <appender-ref ref="FILE"/>
    </root>
</configuration>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值