log4j2 配置详解及使用范例

1.首先介绍loggers标签,用于定义logger的lever和所采用的appender,其中appender-ref必须为先前定义的appenders的名称,例如,此处为Console。那么log就会以appender所定义的输出格式来输出log

 

root标签为log的默认输出形式,如果一个类的log没有在loggers中明确指定其输出lever与格式,那么就会采用root中定义的格式

解析:如上面的例子中,com.ericsson.lsp.service.sim中的所有类,都会按照console和FILE的appender来输出,而没有定义log的类,都按照root默认的来输出。

 

2.再来介绍下Appenders标签,里面放各种扩展组件,主要类型有

  1.ConsoleAppender

    输出结果到控制台

  2.FileAppender

    输出结果到指定文件

  3.RollingFileAppender

    同样输出结果到文件,区别是用一个buffer,因此速度会快点。

还有其他的 FlumeAppender,JDBCAppender 等等,但是我们最常用的就是前面三者了。

介绍下RollingRandomessFile 的相关属性:

  name:表示该appender的名称

  fileName:表示输出的文件的路径

  append:是否追加,true表示追加内容到所在的日志,false表示每次都覆盖

 filePattern:表示当日志到达指定的大小或者时间,产生新日志时,旧日志的命名路径。

PatternLayout:和log4j1一样,指定输出日志的格式,具体代表的意思见前面的博客中

Policies:策略,表示日志什么时候应该产生新日志,

          可以有时间策略和大小策略等,上面使用的是时间策略,每隔24小时产生新的日志文件

ThresholdFilter :过滤器,log4j2中有很多的filter,但是没有仔细研究,需要的时候再看

          上文中的ThresholdFilter filter 指定了输出的最低级别,如

       

       将输出debug以及debug级别以上的,但是需求只需要输出debug级别的,所以加上下列filter

          

  但是,这样的效果是输出debug和info两个级别的日志,所以换下两个filter的顺序就好了。

 

 

当然还有许多其他的配置,可以自己到官网查看

http://logging.apache.org/log4j/2.x/manual/appenders.html

转载于:https://my.oschina.net/wxiwei/blog/753174

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值