1 log4j2自定义日志级别
项目上遇到获取前端请求,在请求第三方系统,担心这个性能问题
所以需要打印出请求花费的时间,好做分析。
一开始想用log4j2 info级别输出,结果发现info日志打印的太多了,会将打印的时间打乱点,我只需要打印出类似"此次请求花费了多少时间"还有线程号之类的
然后百度日志单独输出到一个文件,结果没什么用处,还是同事靠谱,自定义一个日志级别。
Ok搞定,当然首先要知道日志的级别各代表的level值
自定义等级(原有的level 为 OFF 0、FATAL 100、ERROR 200、WARN 300、INFO 400、DEBUG 500、TRACE 600、 ALL)
log42j.xml主要代码如下:
<CustomLevels>
<CustomLevel name="DIAG" intLevel="350" />
</CustomLevels>
2 log4j2配置
log42j的主要配置也很简单,在src在创建log42j.xml文件,将log42j的jar导入,jar包为log4j-core-2.2.jar和log4j-api-2.2.jar
3 log4j2.xml属性
<ThresholdFilter level="WARN" onMatch="DENY" onMismatch="NEUTRAL" />
此日志的级别 "warn" onmatch="deny" 表示不匹配此级别及以上 onmismatch="neutral" 表示匹配比此日志级别低的
不输出warn及以上级别的信息(onMatch),其他的输出(onMismatch)
<ThresholdFilter level="WARN" onMatch="ACCEPT" onMismatch="DENY" />
此日志的级别 "warn" onmatch="accept" 表示匹配此级别及以上 onmismatch="neutral" 表示不匹配比此日志级别低的
只输出warn及以上级别的信息(onMatch),其他的直接拒绝(onMismatch)
具体的xml配置的说明可以参考 http://blog.csdn.net/edward0830ly/article/details/8250412