SpringBoot2.x学习-日志

一、Spring Boot默认日志框架

SpringBoot使用Logback作为默认的日志框架,spring-boot-starter默认引入依赖spring-boot-starter-logging。打开spring-boot-starter-logging-2.0.7.RELEASE.pom文件可以看到spring-boot-starter-logging依赖logback-classic。

 
    org.springframework.boot
    spring-boot-starters
    2.0.7.RELEASE
  
  org.springframework.boot
  spring-boot-starter-logging
  2.0.7.RELEASE
  Spring Boot Logging Starter
  Starter for logging using Logback. Default logging starter
  https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-starters/spring-boot-starter-logging
  
    Pivotal Software, Inc.
    https://spring.io
  
  
    
      Apache License, Version 2.0
      http://www.apache.org/licenses/LICENSE-2.0
    
  
  
    
      Pivotal
      [email protected]
      Pivotal Software, Inc.
      http://www.spring.io
    
  
  
    scm:git:git://github.com/spring-projects/spring-boot.git/spring-boot-starters/spring-boot-starter-logging
    scm:git:ssh://[email protected]/spring-projects/spring-boot.git/spring-boot-starters/spring-boot-starter-logging
    http://github.com/spring-projects/spring-boot/spring-boot-starters/spring-boot-starter-logging
  
  
    Github
    https://github.com/spring-projects/spring-boot/issues
  
  
    
      ch.qos.logback
      logback-classic
      1.2.3
      compile
    
    
      org.apache.logging.log4j
      log4j-to-slf4j
      2.10.0
      compile
    
    
      org.slf4j
      jul-to-slf4j
      1.7.25
      compile
    
  


二、输出日志到文件

默认情况下Spring Boot 将日志输出到控制台,不写入到任何文件里面。要将日志输出到文件里面可以在application.properties这样配置

logging.path=D:/logs
logging.level.com.soft=debug

这样在目录D:/logs里面会默认生成一个spring.log文件。
也可以指定文件路径名称

project.name=boot
logging.file=D:/logs/${project.name}.log
logging.level.com.soft=debug

这样就会生成一个名称为boot.log文件。

三、Spring Boot 使用Log4j2日志框架

1.排除Spring Boot默认的日志依赖(这种排除依赖方法在Spring Boot 2.0.7.RELEASE版本无效,其他版本还没试过)

 
            org.springframework.boot
            spring-boot-starter-web
            
                
                    org.springframework.boot
                    spring-boot-starter-logging
                
            
        

改成这种方法来 排除默认的Logback依赖:pom.xml加上


            org.springframework.boot
            spring-boot-starter
            
                
                    org.springframework.boot
                    spring-boot-starter-logging
                
            
   

2.加上Log4j2日志框架依赖

 
            org.springframework.boot
            spring-boot-starter-log4j2
        

3.自定义log4j2.xml
在resources下新建log4j2.xml



    
        fire
        %clr{%d{yyyy-MM-dd HH:mm:ss.SSS}}{faint} %clr{%5p} %clr{${sys:PID}}{magenta} %clr{---}{faint} %clr{[%15.15t]}{faint} %clr{%-40.40c{1.}}{cyan} %clr{:}{faint} %m%n%xwEx
    
    
        
            
        
    
    
        
        
        

        
            
        
    

(4)使用

 /**
     * 日志操作对象
     */
    Logger logger = LoggerFactory.getLogger(CommonController.class);

你可能感兴趣的:(Spring,Boot)