Log4j2官方文档翻译、学习笔记之二——Appender的分类及常用类型示例

Appenders是什么

官方文档说“Appenders are responsible for delivering LogEvents to their destination.”也就是说,Appenders负责将日志事件投递到它们的目的地。这个目的地可以是控制台,文件,数据库,甚至是邮件。Appender通常会将日志信息的排版委托给layout(layout将在下一篇博客详细讲解)。

Appender分类

名称 描述
AsyncAppender 使用一个单独线程记录日志,实现异步处理日志事件。
CassandraAppender 将日志信息输出到一个Apache的Cassandra数据库
ConsoleAppender 将日志信息输出到控制台
FailoverAppender 包含其他appenders,按顺序尝试,直至成功或结尾
FileAppender 一个OutputStreamAppender,将日志输出到文件
FlumeAppender 将日志输出到Apache Flume系统
JDBCAppender 将日志通过JDBC输出到关系型数据库
JMS Appender 将日志输出到JMS(Java Message Service)
JPAAppender 将日志输出到JPA框架
HttpAppender 通过HTTP输出日志
KafkaAppender 将日志输出到Apache Kafka
MemoryMappedFileAppender 将日志输出到一块文件关联的内存
NoSQLAppender 将日志输出到NoSQL数据库,如MongoDB
OutputStreamAppender 将日志输出到一个OutputStream
RandomAccessFileAppender 性能比FileAppender高20%~200%的文件输出Appender
RewriteAppender 允许对日志信息进行加工
RollingFileAppender 按log文件最大长度限度生成新文件
RollingRandomAccessFA 添加了缓存的RollingFileAppender
RoutingAppender 将日志事件分类,按条件分配给子appender
SMTPAppender 将日志输出到邮件
SocketAppender 将日志输出到一个Socket
SyslogAppender 是一个SocketAppender,将日志输出到远程系统日志
ZeroMQ/JeroMQ Appender 使用JeroMQ库将日志输出到ZeroMQ终端

常用Appender讲解

ConsoleAppender

ConsoleAppender将日志信息输出到System.out。它的所有属性如下:

  • filter:设置过滤器
  • layout:设置输出样式
  • follow:Identifies whether the appender honors reassignments of System.out or System.err via System.setOut or System.setErr made after configuration.
  • direct:是否绕过java.lang.System.out/.err,直接写入java.io.FileDescriptor。这会带来10倍的性能提升。
  • name:Appender的名字
  • ignoreException:默认true。
  • target:输出方法,“SYSTEM_OUT”或者“SYSTEM_ERR”。默认“SYSTEM_OUT”

一个典型的控制台配置实例:


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值