log4j2配置分析
Appender
定义
Appenders are responsible for delivering LogEvents to their destination
种类
- FailoverAppender
将尝试向队列中的Appender依次输出LogEvent,直到有一个成功为止
作用 失败后的保全策略(例如kafka没有生产成功后落入文件) - FlumeAppender
type="Avro"方式写入flume 相当于log4j充当flume的source - AsynchAppender
异步写入 - SocketAppender
将LogEvent以普通格式发送到远程主机
FileAppender
- ThresholdFilter属性
level默认为ERROR 以上级别不包含自己
onMatch表示匹配设定的日志级别后是DENY还是ACCEPT NEUTRAL(默认),
onMismatch表示不匹配设定的日志级别是DENY(默认)还是ACCEPT还是NEUTRA - RollingRandomAccessFile
immediateFlush:log4j2接收到日志事件时,是否立即将日志刷到磁盘。默认为true - TimeBasedTriggeringPolicy
interval:表示历史日志封存间隔时间,单位为filePattern设置的单位值
Logger
定义
用来单独指定日志的形式,比如要为指定包下的class指定不同的日志级别
- name
- level 以上级别包含自己
- AppenderRef
用来指定该日志输出到哪个Appender
properties
定义
本文件内使用的变量