Spring Boot日志配置及输出(默认日志,自定义日志)

spring boot自带默认配置可以简化配置,达到了开箱即用的效果,今天来看一下日志相关。

本片文章参考自大牛:Spring Boot日志配置及输出,可详细参考

以下是我自己尝试的部分

1.默认日志级别及打印内容

Spring Boot日志配置及输出(默认日志,自定义日志)_第1张图片

常见的日志级别如下:

序号 日志级别 说明
1 trace 追踪,指明程序运行轨迹。
2 debug 调试,实际应用中一般将其作为最低级别,而 trace 则很少使用。
3 info 输出重要的信息,使用较多。
4 warn 警告,使用较多。
5 error 错误信息,使用较多。

使用默认的slf4j日志类来打印日志,可以看到,默认的级别为info,trace和debug都不会打印出来

 其中打印出来的日志1-7分别为:

1):时间日期

2):日志级别

3):进程id

4):分隔符--

5):线程名

6):logger名称(具体到某个类)

7):日志内容

2.修改默认日志配置(自定义日志打印级别和内容):

在配置文件application.properties中添加(注意下图中3要与你项目名保持一致)

#日志级别
logging.level.com.potato.marketweb=trace
#使用相对路径的方式设置日志输出的位置(项目根目录目录\my-log\mylog\spring.log)
#logging.file.path=my-log/myLog
#绝对路径方式将日志文件输出到 【项目所在磁盘根目录\springboot\logging\my\spring.log】
logging.file.path=/spring-boot/logging
#控制台日志输出格式
logging.pattern.console=%d{yyyy-MM-dd hh:mm:ss} [%thread] %-5level %logger{50} - %msg%n
#日志文件输出格式
logging.pattern.file=%d{yyyy-MM-dd} === [%thread] === %-5level === %logger{50} === - %msg%n

可以看到日志输出与application.properties中的consonle一致了(5是按照3来进行打印的),并且输出的级别根据1来确定,这里是trace级别的,那么以他级别以上的都打印出来了。

Spring Boot日志配置及输出(默认日志,自定义日志)_第2张图片

 

对应的项目日志文件log在项目所在磁盘跟目录的对应配置文件中的2 spring-boot/logging文件夹下面,我把项目放在了我本地的D盘下:因此对应的日志文件所在地为:

打开发现,logging.log文件打印的内容为:与console是一致的()

3.自定义日志配置

在 Spring Boot 的配置文件 application.porperties/yml 中,可以对日志的一些默认配置进行修改,但这种方式只能修改个别的日志配置,想要修改更多的配置或者使用更高级的功能,则需要通过日志实现框架自己的配置文件进行配置。
Spring 官方提供了各个日志实现框架所需的配置文件,用户只要将指定的配置文件放置到项目的类路径下即可。

日志框架 配置文件
Logback logback-spring.xml、logback-spring.groovy、logback.xml、logback.groovy
Log4j2 log4j2-spring.xml、log4j2.xml
JUL (Java Util Logging) logging.properties

新建logback文件到resources文件夹下,配置文件内容如下:




    
    
    
    
    
    
        
        








            %d{yyyy-MM-dd HH:mm:ss} [%thread]**************** %-5level %logger{50} - %msg%n
        
    
    
    
        
        ${LOG_HOME}/${appName}.log
        
        
            
            ${LOG_HOME}/${appName}-%d{yyyy-MM-dd}-%i.log
            
            365
            
            
                100MB
            
        
        
        
            %d{yyyy-MM-dd HH:mm:ss} [ %thread ] ------------------ [ %-5level ] [ %logger{50} : %line ] -
                %msg%n
            
        
    
    
    
    
    
    
    
    
        

    

运行测试类,输出为:

Spring Boot日志配置及输出(默认日志,自定义日志)_第3张图片

 

你可能感兴趣的:(后端,spring,boot,后端,java,日志)