全站最硬核 百万字强肝RocketMq源码 火热更新中~(四)

文章目录

public void debug(Object message) {
    if (getRepository().isDisabled(Level.DEBUG_INT)) {
        return;
    }
    if (Level.DEBUG.isGreaterOrEqual(this.getEffectiveLevel())) {
        forcedLog(FQCN, Level.DEBUG, message, null);
    }
}


public void debug(Object message, Throwable t) {
    if (getRepository().isDisabled(Level.DEBUG_INT)) {
        return;
    }
    if (Level.DEBUG.isGreaterOrEqual(this.getEffectiveLevel())) {
        forcedLog(FQCN, Level.DEBUG, message, t);
    }
}


public void error(Object message) {
    if (getRepository().isDisabled(Level.ERROR_INT)) {
        return;
    }
    if (Level.ERROR.isGreaterOrEqual(this.getEffectiveLevel())) {
        forcedLog(FQCN, Level.ERROR, message, null);
    }
}

public void error(Object message, Throwable t) {
    if (getRepository().isDisabled(Level.ERROR_INT)) {
        return;
    }
    if (Level.ERROR.isGreaterOrEqual(this.getEffectiveLevel())) {
        forcedLog(FQCN, Level.ERROR, message, t);
    }

}


protected void forcedLog(String fqcn, Level level, Object message, Throwable t) {
    callAppenders(new LoggingEvent(fqcn, this, level, message, t));
}

可以看到debug,error级别的打印日志,底层都是调用了callAppenders这个方法,而callAppenders追到最下面,就是调用了Appender的doAppend方法,也就是向appenderPipeline管道里面追加一个LoggerEvent。

public void warn(Object message) {
    if (getRepository().isDisabled(Level.WARN_INT)) {
        return;
    }

    if (Level.WARN.isGreaterOrEqual(this.getEffectiveLevel())) {
        forcedLog(FQCN, Level.WARN, message, null);
    }
}

public void warn(Object message, Throwable t) {
    if (getRepository().isDisabled(Level.WARN_INT)) {
        return;
    }
    if (Level.WARN.isGreaterOrEqual(this.getEffectiveLevel())) {
        forcedLog(FQCN, Level.WARN, message, t);
    }
}

可以看到info级别的日志,warn级别的日志,也都是一样的。

public void info(Object message) {
    if (getRepository().isDisabled(Level.INFO_INT)) {
        return;
    }
    if (Level.INFO.isGreaterOrEqual(this.getEffectiveLevel())) {
        forcedLog(FQCN, Level.INFO, message, null);
    }
}

public void info(Object message, Throwable t) {
    if (getRepository().isDisabled(Level.INFO_INT)) {
        return;
    }
    if (Level.INFO.isGreaterOrEqual(this.getEffectiveLevel())) {
        forcedLog(FQCN, Level.INFO, message, t);
    }
}

至此我们基本看完了InternalLoggerFactory类,回到起点KVConfigManager

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值