logback配置中logger层级简述

logback涉及配置仅限xml文档,其核心节点为logger,root节点本质上是一种顶级logger,面向环境下所有代码。
logback对logger的管理,底层是面向所有class文件的,对于特定类a.b.c.D的logger对象,会被缓存于cache中。同时,在创建该类的logger对象前,会把a、a.b、a.b.c三层路径的logger对象都逐一按序创建(即时代码中很可能不会用到)。且,某层级的logger对象会记录父、子(多个)logger对象。

在此前提下,结合logger的作用(是获取log数据,而不是输出并打印),则,某a.b.c.D类的logger对象会按照log级别拿到log数据,
1、首先判断自己有无appender(即输出日志的能力,有则输出一次并交由该appender打印);
2、再判断additivity,如为true,则将log数据再给父层的logger对象,后者会再次判断自身apperder与自身additivity;
3、上述流程直至到达root级的logger,或遇到某层logger对象的additivity为false。

在此过程中,
1、logger的log等级只会影响自身获取相应层级log数据,对子logger的数据无法拒绝(主动权在子logger的additivity属性),只要有appender都会按其能力输出打印一次;
2、logger如不设置additivity,默认true,默认提供父logger,则所有log数据默认都会到达root级logger;
3、logger如不设置appender-ref,默认无,因此某logger必须确认自己的层级,确保有一个父层logger是配置appender即具备输出能力的,一般都是root且子层均默认属性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值