400 028 6601

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

怎么在SpringBoot中异步输出Logback日志

这篇文章给大家介绍怎么在Spring Boot中异步输出Logback日志,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

目前成都创新互联公司已为1000+的企业提供了网站建设、域名、网站空间、网站托管、服务器租用、企业网站设计、延边朝鲜族网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

一、介绍

1.1 Logback

Logback是由log4j创始人设计的另一个开源日志组件,它分为下面下个模块:

1.2 日志级别

包括:TRACE、DEBUG、INFO、WARN 和 ERROR。

1.2.1 TRACE

特别详细的系统运行完成信息,业务代码中,不要使用。(除非有特殊用意,否则请使用DEBUG级别替代)

1.2.2 DEBUG

1.2.3 INFO

系统运行信息

外部接口部分

说明

  1. 并不是所有的service都进行出入口打点记录,单一、简单service是没有意义的;

  2. 对于复杂的业务逻辑,需要进行日志打点,以及埋点记录,比如电商系统中的下订单逻辑,以及OrderAction操作(业务状态变更);

  3. 对于整个系统的提供出的接口(REST/WS),使用INFO记录入参;

  4. 如果所有的service为SOA架构,那么可以看成是一个外部接口提供方,那么必须记录入参;

  5. 调用其他第三方服务时,所有的出参和入参是必须要记录的(因为你很难追溯第三方模块发生的问题)。

1.2.4 WARN

1.2.5 ERROR
影响到程序正常运行、当前请求正常运行的异常情况:

不应该出现的情况:
如果进行了抛出异常操作,请不要记录ERROR日志,由最终处理方进行处理:

反例(不要这么做):

try{
 ....
}catch(Exception ex){
 String errorMessage=String.format("Error while reading information of user [%s]",userName);
 logger.error(errorMessage,ex);
 throw new UserServiceException(errorMessage,ex);
}

1.3 SpringBoot 中 logback

  1. SpringBoot工程自带logback和slf4j的依赖,所以重点放在编写配置文件上,需要引入什么依赖,日志依赖冲突统统都不需要我们管了;

  2. logback框架会默认加载classpath下命名为logback-spring或logback的配置文件。

  3. 将所有日志都存储在一个文件中文件大小也随着应用的运行越来越大并且不好排查问题,正确的做法应该是将ERROR日志和其他日志分开,并且不同级别的日志根据时间段进行记录存储。

二、logback 配置

2.1 配置文件logback-spring.xml示例



  
  

  
  
    
      [%d{yyyy-MM-dd' 'HH:mm:ss.sss}] [%C] [%t] [%L] [%-5p] %m%n
    
  

  
  
    
    
      ERROR
      DENY
      ACCEPT
    
    
      
      [%d{yyyy-MM-dd' 'HH:mm:ss.sss}] [%C] [%t] [%L] [%-5p] %m%n
    

    
    
      
      ${logPath}/info.%d.log
      30
    
  

  
    
    
      ERROR
    
    
      
      [%d{yyyy-MM-dd' 'HH:mm:ss.sss}] [%C] [%t] [%L] [%-5p] %m%n
    
    
    
      
      ${logPath}/error.%d.log
      30
    
  

  
  
    
    0
    
    256
    
    
  

  
    
    0
    
    256
    
    
  

  
  
    
    
    
  

项目配置文件中配置日志输出地址

logging:
 path: ./logs

2.2 标签说明

springboot是什么

springboot一种全新的编程规范,其设计目的是用来简化新Spring应用的初始搭建以及开发过程,SpringBoot也是一个服务于框架的框架,服务范围是简化配置文件。

关于怎么在Spring Boot中异步输出Logback日志就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


当前题目:怎么在SpringBoot中异步输出Logback日志
URL网址:http://mbwzsj.com/article/iedejj.html

其他资讯

让你的专属顾问为你服务