Logback Appender(废弃) 作者:马育民 • 2021-01-24 12:32 • 阅读:10038 # 介绍 logback 将写入日志事件的任务委托给一个名为 **appender** 的组件。Appender 必须实现 `ch.qos.logback.core.Appender` 接口。 ### 内置 appender - **ConsoleAppender**:将日志打印到控制台 - FileAppender:将日志输出到文件中 - **RollingFileAppender**:继承自FileAppender,具有轮转日志文件的功能。 例如:RollingFileAppender 将日志输出到 log.txt 文件,在满足了特定的条件之后,将日志输出到另外一个文件。 - SocketAppender and SSLSocketAppender:将日志传输到远端服务器 - SMTPAppender:将日志发送到邮箱 - DBAppender:将日志保存到数据库中 - 更多点击 [链接](http://www.logback.cn/04%E7%AC%AC%E5%9B%9B%E7%AB%A0Appenders.html "链接") # ConsoleAppender ``` %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36}:%L- %msg%n UTF-8 ``` **解释:** encoder :定义日志字符串格式。 如下: `%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36}:%L- %msg%n` 显示结果如下: ``` 11:06:18.980 [http-nio-8080-exec-1] DEBUG t.m.dao.NoticeMapper.getNoticeById:137- ==> Preparing: select * from t_notice where id=?; ``` # FileAppender ``` ${log-dir}/${log-name}.log ${log-dir}/${log-name}.%d{yyyy-MM-dd}.%i.log 7 5MB %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36}:%L- %msg%n UTF-8 ``` **解释** - file:要写入文件的名称。如果文件不存在,则新建 - rollingPolicy:当轮转发生时,指定 RollingFileAppender 的行为。 - TimeBasedRollingPolicy:基于时间来定义轮转策略 - fileNamePattern:定义了轮转时的文件名 - maxHistory:最多保留多少个日志文件 ### 内置rollingPolicy - **TimeBasedRollingPolicy**:基于时间来定义轮转策略 - SizeAndTimeBasedRollingPolicy:基于大小以及时间的轮转策略 - FixedWindowRollingPolicy:根据固定窗口算法重命名文件 原文出处:http://malaoshi.top/show_1IXSqKT1i6H.html