Log4j学习—Log4j简介.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Log4j学习—Log4j简介

标题 ? Log4j学习—Log4j简介 选择自 shrekmu 的 Blog 关键字 ? Log4j学习—Log4j简介 出处 Log4j学习—Log4j简介一、 Log4j使用 1、 配置运行环境,包含log4j-1.2.9.jar,使用BasicConfigurator.configure 配置运行环境。 2、 使用Logger.getLogger TestLogginLevel.class 获取Logger实例。 3、 使用fatal 、error 、warn 、info 、debug 打印Log。二、 记录器(Logger)log4j允许程序员定义多个记录器,每个记录器有自己的名字,记录器之间通过名字来表明隶属关系(或家族关系)。 1、 Logger的层次结构。X.y的logger是x.y.z的logger的父logger,x是x.y.z的祖先logger. Logger loggerX Logger.getLogger Y.class ; Logger loggerY Logger.getLogger X.class ;取得的是同一个Logger实例。 2、 Logger的等级(Logger-Level filter)。如果Logger没有定义等级,则使用它父Logger的等级。根Logger的等级为DEBUG。等级次序:OFF FATAL ERROR WARN INFO DEBUG ALL; 可以使用logger. setLevel Level.DEBUG 设置Logger的等级。等级过滤:如果执行等级 设定等级,则相应操作不会执行。 3、 基准过滤等级(Hierarchy-wide Threshold filter)。它有两种作用范围,全局范围和Appender范围,它的过滤级别高于实行等级。可以使用如下程序设置: LoggerRepository repository logger.getLoggerRepository ; repository.setThreshold Level.OFF ; 三、 存储器(Appenders):负责Log的保存。1、 log4j中,log信息通过存放器输出到目的地。支持的存放器有console, files, GUI components, remote socket servers, JMS, NT Event Loggers, remote UNIX Syslog daemons。通过file存放器,log信息可以被输出到不同的文件中(即不同的目的地)。log信息可被异步存放。 2、 一个记录器可以有多个存放器,可以通过方法addAppender来增加存放器。一条blog信息如果可被这个记录器处理,则记录器会把这条信息送往每个它所拥有的存放器。 3、 每个记录器有一个继承开关,其开关决定记录器是/否继承其父记录器的存储器。可以使用setAdditivity()方法设置继承开关,默认为打开状态。 4、 Appender也可以设置过滤器,在配置文件中的属性为:Threshold。也可在程序中用setThreshold 方法设置,参数为Priority类的静态常量 FATAL,ERROR,WARN,INFO,DEBUG 。 5、 可以在一个Logger绑定两个同样的Appender。四、 布局器(Layouts)布局负责格式化输出的log信息。log4j的PatternLayout可以让程序以类似C语言printf的格式化模板来定义格式。五、 对象翻译器(Object Rendering),提供可插入式的对象翻译器,即将对象翻译为相应的消息。可以让你在不在对象类中添加toString 方法,而格式化类的信息。1、 果想翻译的类实现了toString 方法,可以使用DefaultRenderer。 2、 自己的对象翻译器需要实现org.apache.log4j.or.ObjectRenderer接口。 3、 如果子对象没有相应的翻译器类,则会使用父类对应的翻译器类。六、 Logger的执行时序。 1、 执行Hierarchy-wide Threshold过滤。 2、 执行Logger-Level过滤。 3、 生成LoggingEvent。 4、 调用Appender。 5、 调用Layout格式化LoggingEvent。 6、 返回格式化好的LoggingEvent,在Appender中执行相应的Log动作。七、 性能(已经和System.out.println 差不多了) 1、 Logging关闭后的性能:应该在写Log之前判断isDebugEnabled 和相应的方法。优:可以省去一些对象调用toString 的时间。弊:当

文档评论(0)

kabudou + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档