• Spring Boot默认日志框架配置简介说明


    转自:

    Spring Boot默认日志框架配置简介说明

    下文笔者将讲述SpringBoot中的默认日志框架简介说明,如下所示

    默认日志框架简介

    Spring Boot在所有内部日志中使用Commons Logging
       但是默认配置了对常用日志的支持
       如:Java Util Logging,Log4J,Log4J2和Logback
    

    默认日志Logback

    SLF4J(Simple Logging Facade For Java)
     它是一个针对于各类Java日志框架的统一Facade抽象
     Java日志框架众多,如:java.util.logging,log4j,logback,commons-logging,
     Spring框架使用的是Jakarta Commons Logging API(JCL)
        SLF4J定义了统一的日志抽象接口
    	 而真正的日志实现则是在运行时决定的——它提供了各类日志框架的binding
    
    Logback是log4j框架的作者开发的新一代日志框架
       它效率更高、能够适应诸多的运行环境,同时天然支持SLF4J。
    
    默认情况下
      Spring Boot会用Logback来记录日志
      并使用INFO级别输出到控制台
     在运行应用程序和其他例子时,你可以看见很多输出的INFO日志信息
    

      当在maven依赖中添加了spring-boot-starter-logging,即可实现日志框架的引用

    Spring Boot启动的时候,由org.springframework.boot.logging.Logging-Application-Listener根据情况初始化并使用。
     注意事项:
         实际开发中,无需引入日志框架,
    	 因为spring-boot-starter其中包含了 spring-boot-starter-logging
    	 并且 Spring Boot默认日志框架logback
    

    springboot中application.properties配置说明

    logging.file:
         设置文件,可以是绝对路径
    	  可是相对路径
    	  如:logging.file=test.log 
    
    logging.path:
          设置目录,会在该目录下创建test.log文件
    	  并写入日志内容
    	  如:logging.path=/var/log 
    
    logging.level.* = LEVEL'
         LEVEL::选项TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF
    
    
    
    logging.level.com.java265=DEBUG:com.java265包下所有class以DEBUG级别输出
    logging.level.root=WARN:root日志以WARN级别输出
    
    
    缺省情况下:
         日志文件达到100M会重新生成一个文件
    

    自定义日志配置

    由于springboot通常使用yml,properties等格式的配置文件,但是日志配置通常使用xml
    此时我们会将日志信息配置为一个单独的xml文件
    例:

     
    //spring boot配置以下属性
    logging.config=classpath:logging-config.xml
    
    //单独在resource中定义一个日志配置信息
    Logback:logback-spring.xml, logback-spring.groovy, logback.xml, logback.groovy
    Log4j:log4j-spring.properties, log4j-spring.xml, log4j.properties, log4j.xml
    Log4j2:log4j2-spring.xml, log4j2.xml
    JDK (Java Util Logging):logging.properties
  • 相关阅读:
    C++基于开源Modbus Tcp 通讯应用客户端(稳定高效,多线程后台状态读取,不卡顿)
    基础讲解——ES6
    unity脚本_Input鼠标键盘 c#
    maven与Jenkins
    Spring框架系列(5) - 深入浅出SpringMVC请求流程和案例
    .NET LoongArch64 正式合并进入.NET
    算法入门之链表简介
    神经网络中的Heloo,World,基于MINST数据集的LeNet
    MathorCup大数据挑战赛第二届A题-自动驾驶中的车辆调头问题赛题解析(附MATLAB实现代码)
    【计算机网络】 Nagle算法
  • 原文地址:https://blog.csdn.net/qq_25073223/article/details/127945118