java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > springboot自定义日志

springboot项目中添加自定义日志及配置过程

作者:scx_link

这篇文章主要介绍了springboot项目中添加自定义日志,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

当前项目使用的springboot为 2.2.2.release。低版本的话logging下的子标签有可能不是这样的。

 <dependency>
     <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-dependencies</artifactId>
      <version>2.2.2.RELEASE</version>
      <type>pom</type>
      <scope>import</scope>
</dependency>

 <parent>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-parent</artifactId>
      <version>2.2.2.RELEASE</version>
      <relativePath/> <!-- lookup parent from repository -->
</parent>

application.yml文件中的配置

logging:
#  config: classpath:logback.xml
  level:
    #logging.level.root=info就是默认的情况
#    root: info  #logging.level设置日志级别,后面跟生效的区域,比如root表示整个项目,也可以设置为某个包下,也可以具体到某个类名(日志级别的值不区分大小写)
    root: warn
    cn.com.yuanquanyun: debug
  file:
    max-size: 10MB
    max-history: 7
    path: logs
    name: ${logging.file.path}/myapp.log
#指定日志的格式(springboot也自带默认的格式)
  pattern:
#    console: "%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%thread] %logger : %msg%n"  #指的是打印到控制台的日志格式
    console: "%red(%d{yyyy-MM-dd HH:mm:.SSS}) %green([%thread]) %highlight(%-5level) %boldMagenta(%logger{50}) - %cyan(%msg%n)" #指的是打印到控制台的日志格式--带颜色
    file: "%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%thread] %logger : %msg%n"     #指的是存储到日志文件里的的日志格式

对上述的配置进行说明:

logger.level.root:info #表示整个项目的日志输出级别为Info,也就是日志级别比Info高的日志都输出,也是默认的。
logger.level.root:warn #一般改为warn基本
logger.level.cn.com.yuanquanyun: debug #也可以指定某个包下的日志级别。尤其是打印sql语句时,需要debug级别才能看到。这样项目的其他地方的日志是warn级别。这个指定包的日志级别为debug级别。
%d:  表示日期格式 默认为:yyyy-MM-dd HH:mm:ss,SSS,  可以通过%d{yyyy-MM-dd HH:mm:ss.SSS} 或 %d{yyyy-MM-dd HH:mm:ss} 来指定格式,一般来说最好用默认的精确到毫秒级
%-5level:级别从左显示5个字符宽度 ,
%thread:  表示线程名,
%logger: 表示当前调log.info()打印日志的对象的类的权限定名
%msg:日志消息,%n是换行符
 max-size: #当日志文件的内容达到指定大小时,会执行回滚策略,将文件压缩归档为日志文件名.log.yyyy-MM-dd.i.gz,再生成一个新的zhyd-app.log空文件继续收集新日志。不能保证压缩前的日志文件完全是指定的大小,因为需要保证日志完整性,不能断行。一般都会略大于指定的大小.
 max-history:   #历史归档文件保留7天,超过7天的,会自动删除
 path:       #生成的日志文件所在的目录
 name:   #指定生成的日志文件的名称,如果没有指定,则使用默认的:spring.log
#config: classpath:logback.xml #也可以这里引入xml文件。不把日志的配置写到application.yml,而是写到另外一个文件中。这样避免yml文件太臃肿。

在这里插入图片描述

到此这篇关于springboot项目中添加自定义日志的文章就介绍到这了,更多相关springboot添加自定义日志内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文