Logback 系列(3):三大核心组件 Logger / Appender / Encoder

本系列第 3 篇。理解这三者的关系,Logback 就懂了一大半。

一张图理清关系

复制代码
应用代码 → Logger(决定"要不要记")→ Appender(决定"记到哪")→ Encoder(决定"记成什么样")
  • Logger(记录器):按名字(通常是类的全限定名)组织,负责判断级别、把日志事件转交给 Appender。
  • Appender(输出源):日志的"出口"。控制台、文件、数据库、Kafka......一个 Logger 可以挂多个 Appender。
  • Encoder / Layout(编码器/布局):把日志事件格式化成最终文本(或 JSON)。现在推荐用 Encoder。

对应到 XML

xml 复制代码
<appender name="STDOUT" class="...ConsoleAppender">   <!-- Appender -->
    <encoder>                                         <!-- Encoder -->
        <pattern>%d ... %msg%n</pattern>              <!-- Pattern -->
    </encoder>
</appender>

<root level="info">                                    <!-- Logger(根) -->
    <appender-ref ref="STDOUT"/>                       <!-- Logger 挂 Appender -->
</root>

记忆口诀

  • Logger 管"记不记"(级别过滤)
  • Appender 管"记哪去"(输出目的地)
  • Encoder 管"长啥样"(格式化)

三者是流水线关系:一条日志先过 Logger 的级别判断,再交给它挂的每个 Appender,每个 Appender 用自己的 Encoder 格式化后输出。


上一篇:SLF4J 与 Logback

下一篇:日志级别与继承(additivity)

相关推荐
幸运小圣几秒前
PointerEvent 常用属性与事件整理【JavaScript】
开发语言·javascript·ecmascript
LuTshoes4 分钟前
spring ai 实战 手搓 PlaneExecuteAgent
java·人工智能·spring·ai
这料鬼有毒14 分钟前
二刷hot100-73.矩阵置零
java
caoerzhong14 分钟前
JeeWMS 开源仓库管理系统二次开发与接口对接实战:Java WMS 如何与 ERP、MES 和自动化设备打通
java·开源
长谷深风11128 分钟前
评测AI Agent:三种裁判各司其职
java·大数据·开发语言·人工智能·ai agent
边境悍匪33 分钟前
蜗牛学苑 Java 智能体学习 Day42|项目周开发技术汇总 1 思维导图复盘
java·开发语言·spring boot·学习·spring
槑有烦恼1 小时前
Java 字符串 & List集合 高频易错真题复盘(含全部错题+修正)
java
语戚1 小时前
力扣 1621. 大小为K的不重叠线段的数目:动态规划(Java 实现)
java·算法·leetcode·动态规划·力扣·dp
君顾11 小时前
本地托管机构管理源码实战:需求拆解、数据建模与多端部署
java·开发语言·托管
青山木1 小时前
Hot 100 --- 最长有效括号
java·数据结构·算法·leetcode·动态规划