springboot2.0整合logback日志(详细)-禁止logback内部日志

 

本文转载自作者: 70KG
出处: https://www.cnblogs.com/zhangjianbing/p/8992897.html

一。

近期自己的项目想要一个记录日志的功能,而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文件

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

复制代码
xml version="1.0" encoding="UTF-8"?>







    

    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

日志的使用方式,就跟普通使用一样,只不过,此配置配置的是不仅在控制台输出而且在磁盘上也会保留,并且info/debug/error/warn的日志都区分开了,并且按照每天做了归档

纸上得来终觉浅,绝知此事要躬行。有问题的话,欢迎交流:QQ群4060038

 

你可能感兴趣的:(java,log,springboot)