Spingboot 2.0 日志配置

一、简述

近期自己的项目想要一个记录日志的功能,而springboot本身就内置了日志功能,然而想要输入想要的日志,并且输出到磁盘,然后按天归档,或者日志的切分什么的,自带的日志仅仅具有简单的功能,百度了一番,总结如下,适合大多数的应用场景

二、springboot的pom文件都会引一个parent


        org.springframework.boot
        spring-boot-starter-parent
        2.0.0.RELEASE
 

点进去这个parent,会有一个这个dependency


        org.springframework.boot
        spring-boot-dependencies
        2.0.0.RELEASE
        ../../spring-boot-dependencies

再点进去就是2.0版本,所谓的它给你集成的各种包依赖,而且规定了版本号,其中有一个包如下


        org.springframework.boot
        spring-boot-starter
        2.0.0.RELEASE
 

再点进去


      org.springframework.boot
      spring-boot-starter-logging
      2.0.0.RELEASE
      compile

再点,啊哈,出来了,这些都是原有的日志包,所以,不必再引依赖了,直接用就ok了,用法如下:


    
      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
    

============================分割线====================================

三 、样例配置文件

首先,官方推荐使用的xml名字的格式为:logback-spring.xml而不是logback.xml,至于为什么,因为带spring后缀的可以使用这个标签。

在resource下创建logback-spring.xml文件

内容如下,每行都有注释了







    

    logback
    
    

    
    
    
    
    
    
    

    
    
        
        
            info
        
        
            ${CONSOLE_LOG_PATTERN}
            
            UTF-8
        
    

    

    
    
        
        ${log.path}/log_debug.log
        
        
            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n
            UTF-8 
        
        
        
            
            ${log.path}/debug/log-debug-%d{yyyy-MM-dd}.%i.log
            
                100MB
            
            
            15
        
        
        
            debug
            ACCEPT
            DENY
        
    

    
    
        
        ${log.path}/log_info.log
        
        
            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n
            UTF-8
        
        
        
            
            ${log.path}/info/log-info-%d{yyyy-MM-dd}.%i.log
            
                100MB
            
            
            15
        
        
        
            info
            ACCEPT
            DENY
        
    

    
    
        
        ${log.path}/log_warn.log
        
        
            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n
            UTF-8 
        
        
        
            ${log.path}/warn/log-warn-%d{yyyy-MM-dd}.%i.log
            
                100MB
            
            
            15
        
        
        
            warn
            ACCEPT
            DENY
        
    

    
    
        
        ${log.path}/log_error.log
        
        
            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n
            UTF-8 
        
        
        
            ${log.path}/error/log-error-%d{yyyy-MM-dd}.%i.log
            
                100MB
            
            
            15
        
        
        
            ERROR
            ACCEPT
            DENY
        
    

    
    
    
    

    

    
    
        
    

    
        
        
        
        
        
    

    
    
        
            
            
            
            
            
        
    


然后在yml或者properties中配置

  logging.config=classpath:log/logback-spring.xml
  logging.path=D:/nmyslog/nmys (此处配置logback-spring.xml中就不用配置了)

你可能感兴趣的:(Spingboot 2.0 日志配置)