SpringBoot 下在 yml 中的 logging 日志配置方法
作者:杜小舟
logging 配置主要用于控制应用程序的日志输出行为,可以通过配置定制日志的格式、级别、输出位置等,这篇文章主要介绍了SpringBoot 下在 yml 中的 logging 日志配置,需要的朋友可以参考下
前言
logging 配置主要用于控制应用程序的日志输出行为,可以通过配置定制日志的格式、级别、输出位置等。
输出日志的级别
控制哪些级别的日志会被记录,常见级别有:
- ERROR:用于记录严重错误或异常,出现了这个日志,就说明程序中有严重的错误或者异常已经影响到了某些功能的运行。
- WARN:输出出现问题的警告信息,但是这些问题还不影响系统的正常运行,主要是让开发者和运维人员注意这些可能引发问题的情况,以便在问题变得严重之前进行排查和处理。
- INFO:用于记录普通的操作信息和运行状态。这些日志通常用于了解应用程序的正常运行情况。
- DEBUG:用于记录详细的调试信息。这些日志通常包含比 INFO 级别更多的细节,适用于调试和开发阶段,帮助开发者了解系统的内部工作流程。DEBUG 日志通常包括方法的入口和出口、变量值、逻辑分支的走向等。
- TRACE:这个级别用于记录最详细的调试信息。这些日志通常包含比 DEBUG 级别更细粒度的信息,适用于深度调试和分析问题。TRACE 日志详细到函数的每一步执行情况,参数传递和返回值等,非常适合在开发阶段或问题排查时使用。
当然,也可以针对不同的包或者类单独设置日志级别。
logging: level: # 总级别 root: INFO # 单个包的级别 com.example: DEBUG
日志输出的位置
配置日志文件输出到的位置和名称。
如果想配置不同级别的日志输出的位置和名称,需要使用 Logback 配置文件。
logging: file: name: /var/log/my.log
日志输出的格式
配置日志的输出格式,可以通过设置不同的模式来定制日志的输出样式。
logging: pattern: # 控制台输出格式 console: "%d{yyyy-MM-dd HH:mm:ss} - %msg%n" # log文件输出格式 file: "%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n"
日志文件的存储路径
指定日志文件的存储路径,可以指定一个目录,日志文件将存储在这个目录下。
logging: path: /var/log/mylog
日志文件是否输出到控制台配置
配置是否将日志输出到控制台。
logging: console: enabled: true
Logback 配置
Logback 是 Spring Boot 默认使用的日志框架,可以在 logging.logback 下进行更详细的配置,比如自定义 Logback 的配置文件。
logging: # 通过指定自定义的配置文件做更详细的配置 config: classpath:logback-spring.xml
日志分组配置
可以为日志级别配置创建分组,方便统一管理。允许将一组包或类分配到一个日志级别组中,从而简化日志级别的配置管理。通过分组配置,可以一次性为多个包或类设置相同的日志级别,而不需要单独为每个包或类进行配置
logging: group: service: com.example.service, com.example.service.impl repository: com.example.repository, com.example.repository.impl controller: com.example.controller level: root: INFO service: DEBUG repository: ERROR controller: WARN com.example.controller.special: TRACE
日志细粒度配置【logger】
细粒度的日志配置,可以为特定的类或包单独配置日志级别。这在需要针对某些特定部分进行详细调试时非常有用。
logging: level: root: INFO # 细粒度日志配置 logger: # 为 com.example.service 包下的所有类设置 DEBUG 级别 com.example.service: level: DEBUG file: /var/log/myapp/service.log # 为 com.example.repository.DBRepository 类设置 TRACE 级别 com.example.repository.DBRepository: level: TRACE file: /var/log/myapp/repository.log # 为 com.example.controller 包下的所有类设置 WARN 级别 com.example.controller: level: WARN # 为 com.example.util 包下的所有类设置 ERROR 级别 com.example.util: level: ERROR
到此这篇关于SpringBoot 下在 yml 中的 logging 日志配置的文章就介绍到这了,更多相关SpringBoot logging 日志配置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!