美文网首页
一图看懂springboot日志的框架

一图看懂springboot日志的框架

作者: sknfie | 来源:发表于2021-05-13 19:45 被阅读0次

    概述

    本文详细了解springboot日志的框架,并设置日志级别、日志的存储路径,以及日志的格式。

    剖析springboot的日志框架

    springboot日志架构

    从springboot的底层框架spring-boot-starter-logging 可以看出,它依赖了3个框架分别为;slf4j、logback、log4j

    分析1:slf4j、logback、log4j的区别?

    • 1.logback、log4j:是日志实现框架,就是实现怎么记录日志的。
    • 2.slf4j:提供了java中所有的日志框架的简单抽象(日志的门面设计模式),说白了就是一个日志API(没有实现类),它不能单独使用。因此,必须结合logback或log4j日志框架来实现。

    分析2:springboot的日志搭配

    springboot2.0默认采用了slf4f+logback的日志搭配。
    在开发过程中,我们都是采用了slf4j的api去记录日志,底层的实现就是根据配置logback或log4j日志框架。

    为什么控制台的日志只输出了 info warn error?

    因为springboot默认是info级别的

    logging.level.com.agan.boot=trace
    
    

    三:配置日志的生成存储路径和日志名称

    在实际的开发中,你不可能一直看着控制台,而且日志会非常大,瞬间就丢失。
    故,我们要把日志存储在指定的目录下;

    #一下配置的效果为:项目根目录下/output/logs/spring.log,默认的日志名为spring.log
    #logging.path=output/logs
    
    # 如果不想要把日志存放在longging.path默认的根目录下,那就采用自定义的目录和文件名
    logging.file=/Volumes/data/logs/springboot.log
    

    配置日志的内容格式

    # %d-时间格式、%thread-线程、%-5level-从左5字符宽度、%logger{50}-日志50个字符、%msg-信息、%n-换行
    # 设置在控制台输出的日志格式
    logging.pattern.console=%d{yyyy-MM-dd} [%thread] %-5level %logger{50} -%msg%n
    # 设置输出到文件的日志格式
    logging.pattern.file=%d{yyyy/MM/dd} === [%thread] == %-5level == %logger{50} == %msg%n
    

    相关文章

      网友评论

          本文标题:一图看懂springboot日志的框架

          本文链接:https://www.haomeiwen.com/subject/zumxjltx.html