九,SpringBoot-日志管理(LogBack)

一,SpringBoot日志级别

springboot默认使用的日志框架是LogBack,默认INFO级别。

日志依赖:


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

实际开发中,该依赖已经默认依赖了,不需要我们单独再去依赖

SpringBoot日志级别(从低到高):

TRACE<DEBUG<INFO<WARN<ERROR<FATAL<OFF

如果设置为INFO级别,则只会输出比INFO级别高的日志。

SpringBoot默认配置INFO,WARN,ERROR级别的日志输出到控制台。

二,日志配置输出

默认情况下,springboot的日志是输出到控制台的,如果我们想把日志写入到文件中,需要再application.properties(application.yml)文件中设置loggiing.file或logging.path属性。

1,loggin.file  设置文件,可以是绝对路径也可以是相对路径。如:loggin.file=log/objlog.log(相对路径,文件已经目录生成在项目的根目录下)或loggin.file=/log/objlog.log(绝对路径,文件生成系统盘根目录下(window默认c盘,不指定盘的话))

2,loggin.path 设置目录,可以是绝对路径也可以是相对路径。不需要文件名 会在该目录下默认生成spring.log文件,如:loggin.path=/var/log

两者不能同时使用,同时使用时只有loggin.file 生效,默认情k况下,日志文件的大小达到10MB会进行切分,产生新的日志文件

配置日志:

创建appliction.properties 文件,加上以下内容(当application.yml文件和application.properties文件同时存在时,项目启动两个文件配置都会读取到)

#root日志的默认输出级别为debug,其它日志的输出请自行百度
logging.level.root=warn
logging.level.org.hibernate=debug
logging.level.org.springframework.web=debug
logging.file=C:/log/springLog/spring_child.log  #生成日志文件到C盘下
#控制台输出格式
logging.pattern.console=%d{yyyy-MM-dd HH:mm:ss} [%thread] %highlight(%-5level) %cyan(%logger{36}) - %msg%n
# 日志文件写入格式
logging.pattern.file=%d{yyyy-MM-dd} [%thread] %-5level %logger{36} - %msg%n

重新启动项目即可,控制台效果如下:

九,SpringBoot-日志管理(LogBack)_第1张图片

 

日志格式转换字符的具体含义可参考LogBack的官网,里面有详细的讲解,这里就不多做解释了。logback中文网|Introduction

九,SpringBoot-日志管理(LogBack)_第2张图片

 

三,自定义日志配置文件

由于springboot默认已经为我们依赖了logback,所以当我们需要修改一些配置时,直接在application文件中修改即可,除此之外我们还可以自定义配置文件对日志系统进行管理。(使用自定义配置文件时,application文件中不必设置日志的相关信息。一切信息在自定义配置文件中设置

根据不同的日志系统,按照相应的规则命名文件即可:

LogBack:logback-spring.xml(logback.xml)  

Log4j:   log4g-spring.xml(log4g.xml)    log4g-spring.properties(log4g.properties)

Log4j2: log4g2-spring.xml(log4g2.xml)

springboot官方推荐使用-spring的文件名作为日志配置。以 -spring命名的文件,springboot可以为它添加一些springboot特有的配置项。

另:可以通过logging.config=classpath:loggin_config.xml 来自定义配置名,一般情况下是不需要去改配置文件名的。有一个好处是可以区分环境,和profile一样。根据运行环境不同使用不同的配置文件。

1.创建logback-spring.xml 文件



    
    

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

    
    
        
            
            ${LOG_HOME}/spring_child.%d{yyyy-MM-dd}.log
        
        
            %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
        
    

    
    
        
        0
        
        512
        
        
    

    
    
        
        
        
    

关于logback的更多配置可以参考官网给的dmeo。

②,启动项目,查看控制台以及日志文件。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(springBoot开发)