spring-boot日志

默认情况下,Spring Boot会用Logback来记录日志,并用INFO级别输出到控制台。并且默认spring Boot自动加载了Logback依赖,无需手动引用任何依赖.

看完这个不会配置 logback ,请你吃瓜!

日志级别优先级

  • TRACE < DEBUG < INFO < WARN < ERROR < FATAL

logBack的公共配置

  • 默认Spring Boot配置日志输出到控制台,并没有输出到日志文件
  • 我们可以手动修改application.yml配置文件,新增内容如下:
      logging:
        pattern:
           #日志格式化
          console: "%d - %msg%n"
        path: /var/log/spring
        file: /var/log/spring/lxf.log
        #针对固定包下信息规定日志级别
        level:
         com.example.readinglist: info
    
    注意:日志配置, path和file不能同时使用,如果要同时使用则logging.file生 效,logging.path失效

代码测试

  • HelloWorld.java
    package com.example.readinglist.controllers;
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RestController;
    @RestController
    public class HelloWorld {
      private final Logger logger =     LoggerFactory.getLogger(HelloWorld.class);
        @GetMapping(value = "/hello")
        public String testHello()
        {
            //日志级别从低到高分为TRACE < DEBUG < INFO < WARN <   ERROR < FATAL,如果设置为WARN,则低于WARN的信息都不会输出。
            logger.trace("日志输出 trace");
            logger.debug("日志输出 debug");
            logger.info("日志输出 info");
            logger.warn("日志输出 warn");
            logger.error("日志输出 error");
            return "hello world!";
        }
    }
    

自定义xml文件详细配置logBack

  • 自定义xml文件配置会覆盖掉application.yml中的logging相关配置
  • logback-spring.xml配置文件放在 src/main/resources 目录下,内容如下:
 


   logback-demo
   

   
   
   

   
   
       
       
           
               %d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n
           
       
       
   


   
   
       

       
       ${logback.logdir}/info.${logback.appname}.log
       
       
           
           ${logback.logdir}/info.${logback.appname}.%d{yyyy-MM-dd}.log
           
           90
           
           
       
       
       
           UTF-8
           %d [%thread] %-5level %logger{36} %line - %msg%n
       
   

   
   
       
       
       
   

   
   
       
           
           
           
           
       
   

   
   
       
           
           
       
   


  • application.yml 配置文件内容
     spring:
       #引入开发环境,在logback-spring.xml中不同环境,记录不同日志级别信息
        profiles:
        active: dev
    #配置自定义日志变量信息,在logback-spring.xml中引用
    logback:
      #日志路径
      logdir: /home/lxf/test/logs
      #日志文件名
      appname: lxf-spring-log-test.log
    

参考文章:

logback 配置详解(一)——logger、root
http://m.blog.csdn.net/inke88/article/details/75007649
slf4j+logback SLF4J和Logback日志框架详解
http://blog.csdn.net/qq_28893679/article/details/78327952
myslbatis输出sql语句配置

你可能感兴趣的:(spring-boot日志)