spring boot日志级别,springboot动态修改日志级别

  spring boot日志级别,springboot动态修改日志级别

  00-1010前言正文springboot版本:1.5.7配置结束结论

  00-1010日志模块在每个项目中都是必不可少的,用来记录程序运行中的相关信息。通常,调试级别的日志输出用于开发环境。为了方便查看问题,一般在线使用INFO级别的日志,主要记录业务操作的日志。那么问题来了。当在线环境出现问题,我想输出调试日志信息以协助故障排除时,我应该怎么做?修改配置文件,重新打包并上传以重启在线环境,这是之前完成的。下面介绍如何通过动态调整在线日志级别来解决这个问题。

  

目录

 

  00-1010实现起来超级简单。日志级别是通过使用spring boot附带的LoggingSystem的api动态设置的。当然,项目需要提供动态调整的接口来达到动态调整的目的。然而,Blogger项目使用的是Apollo配置中心,而搜搜已经完成了它的动态配置。代码如下所示

  @ service public class DynamicLoggersConfig { Logger Logger=Logger factory . get Logger(getClass());@ ApolloConfigprivate Config Config;private final静态字符串LoggerTag= logging.level私有最终日志系统日志系统;public DynamicLoggersConfig(LoggingSystem logging system){ assert . not null(logging system, logging system不得为null );this . logging system=logging system;} @ apolloconfigchangelistener private void configchangelister(ConfigChangeEvent change event){ SetkeyNames=config . getpropertynames();for(String key : key names){ if(String utils . contains ignore case(key,LoggerTag)){ String str level=config . getproperty(key, info );log level level=log level . value of(strlevel . toupper case());logging system . setlog level(key . replace(LoggerTag,),level);logger . info({ } : { } ,key,str level);}}}}

  00-1010可以配置为spring环境中的正常配置日志级别,例如

  Logging.level.org.springframework=INFOlogging.level.com。yudianbank . sales=DEBUGlogging.level.org.hibernate=INFO。如上所述,spring系统工具开放信息级日志,业务系统开放调试级日志,hibernate开放信息级日志。

  00-1010动态日志输出看似一个小函数,却能解决一个非常大的问题。在各种环境中,查看日志输出来消除错误是必不可少的。文件中提到的Apollo是携程开源的配置中心项目。感谢携程开源给了我们这么好的产品。项目地址如下

  阿波罗项目地址:https://github.com/ctripcorp/apollo

  以上是spring boot中动态调整在线日志级别的配置步骤的详细说明。更多关于春开机在线日志级别动态调整的信息,请关注风行IT的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: