log4j2的配置
- 格式:docx
- 大小:19.88 KB
- 文档页数:8
log4j2的配置
log4j2的配置
• log4j2.xml配置代码
• 解释及问题
•
o 一.结果说明
o 二.配置说明
o
▪ Filter
▪
▪ 1、ThresholdFilter
▪ 2、RegexFilter
▪ 3、TimeFilter
o 三.踩过的坑
o
▪ 1、ThresholdFilter ERROR 错误
▪ 2、依赖问题
▪ 3、Spring5.x的集成
log4j2.xml配置代码
fileName="logs/info.log"
filePattern="logs/$${date:yyyy-MM}/info-%d{yyyy-MM-dd}-%i.log">
onMismatch="ACCEPT"/>
fileName="logs/warn.log"
filePattern="logs/$${date:yyyy-MM}/warn-%d{yyyy-MM-dd}-%i.log">
onMismatch="NEUTRAL"/>
fileName="logs/error.log"
filePattern="logs/$${date:yyyy-MM}/error-%d{yyyy-MM-dd}-%i.log">
onMismatch="DENY"/>
level="INFO">
解释及问题
这里我踩了不少的坑,网上的资料五花八门很乱,复制粘贴的居多。
首先配置中注释的我就不解释了
一.结果说明
上面的配置最终结果
info.log
只会记录info信息
warn.log
记录info/warn的信息(单独记录warn我没调出来,我对参数已经了解,后面介绍,怀疑是源码设置问题)
error.log
只会记录error信息
二.配置说明
Filters决定日志事件能否被输出。
onMatch
onMismatch
onMatch:表示匹配该级别及以上(>=)
onMismatch:表示匹配该级别以下 (<)
过滤条件有三个值(onMatch、onMismatch属性的值):
ACCEPT(接受)
DENY(拒绝)
NEUTRAL(中立/流传)
如:
level=“warn” onMatch=“DENY”
onMismatch=“ACCEPT”
含义:大于warn级别的拒绝,小于warn级别的接受
Filter
1、ThresholdFilter
控制级别的Filter
只输出info
onMismatch="ACCEPT"/>
只输出error级别以上的日志
onMismatch="DENY"/>
2、RegexFilter
onMismatch="DENY"/>
3、TimeFilter
时间过滤器可用于将过滤器限制为仅当天的某个部分。
onMatch="ACCEPT" onMismatch="DENY" />
三.踩过的坑
1、ThresholdFilter ERROR 错误
如果是如下配置,我本来想的是每个级别只有自己的日志
但是我设置warn的时候出问题了,配置如下:
onMismatch="NEUTRAL"/>
onMismatch="DENY"/>