美文网首页
log4j向logback过渡

log4j向logback过渡

作者: 2894ab72509d | 来源:发表于2018-09-13 11:30 被阅读11次

项目中log4j使用了很久,最近重复日志非常的多,严重影响开发效率,所以打算从log4j向logback过渡,其中也出现了一些问题,最后花了不少时间解决了,以此记录一下

首先去除掉以前的log4j的依赖

然后加入logbac依赖

随后编写logback.xml,前提要删除log4j的配置文件

贴出部分代码,有两个地方需要注意,使用了滚动记录日志的方式,maxFileSize必须要指定,我当时没有指定,文件中始终不能输出任何日志,找了好久才找到。

第二个就是fileNamePattern中 %i 一定要加上,其实是一个index,如果当前日志超过了设置的maxFileSize,就会生成第二个文件,其中%i就会加1,以做区分。

filter是为了过滤日志,只让info级别的日志写入文件

这些东西配置好后logback就可以正常使用了,不过在使用中遇到了一些小问题

logback打印了springFramework,apache等一些第三方包的打印,虽然logback中root的日志级别设置的是info,

但是依然打印了第三方包的debug日志,造成了大量冗余日志

搜索了很多资料,网上这种说话是最多的,不过我改了好几种方式都没有什么作用,level 写成error等也没有作用。

最后还是去logback官方找到了解决方案,spring和apache底层是使用commons-logging做日志输出的,logback中有好几张图解释了什么情况使用什么什么方式做桥接,其中commons-logging需要使用一个jcl的中间包,并且从spring中取出commons-logging的依赖即可,然后spring的日志会由自己配置的logback控制输出。

最后一个是阿里巴巴的druid,找了好半天发现它的pom里面虽然引用了log4j等日志框架,但是scope都是provided,所以很有可能就是依赖项目中的其他log4j,最后才发现百度的api中引入了log4j,顺便将百度的日志也改好了。

去掉了百度中的log4j依赖,并加入中间包做桥接,至此,这个问题就算是解决了。

到现在也没有用logger的节点来解决这个问题,如果有清楚的朋友可以说一下,logger节点控制不了第三方包的日志级别,反正我自己控制不了  - -

相关文章

  • log4j向logback过渡

    项目中log4j使用了很久,最近重复日志非常的多,严重影响开发效率,所以打算从log4j向logback过渡,其中...

  • SpringBoot--实战开发-整合Logback(五)

    一、Logback简介   Logback是java的日志开源组件,是log4j创始人写的,性能比log4j要好,...

  • Logback的基本使用及配置

    简介 Logback旨在作为流行的log4j项目的后继者,从log4j离开的地方接手。 Logback的体系结构足...

  • logge日志-logback

    一、logback简介 logback是log4j创始人写的,性能比log4j要好,目前主要分为3个模块 logb...

  • logback教程

    一、Logback简介logback是一个开源的日志组件,是log4j的作者开发的用来替代log4j的。logba...

  • spring mvc+logback日志(1)--引用整合概述

    一、简介 Logback 继承自 log4j。Logback 的架构非常的通用,适用不同的使用场景。Logback...

  • logback介绍及使用配置(一)

    Logback和log4j是非常相似的,如果你对log4j很熟悉,那对logback很快就会得心应手。下面列了lo...

  • logback的优点

    Logback和log4j是非常相似的,如果你对log4j很熟悉,那对logback很快就会得心应手。下面列了lo...

  • 浅谈日志处理logback

    logback是由log4j创始人设计的另一款日志组件。比起log4j,logback表现出了更强的性能。logb...

  • Spring boot 日志系统

    日志系统采用logback,相对于log4j,logback有以下优点: https://blog.csdn.ne...

网友评论

      本文标题:log4j向logback过渡

      本文链接:https://www.haomeiwen.com/subject/ptcwgftx.html