zoukankan      html  css  js  c++  java
  • Log4j学习

    参考链接:http://www.cnblogs.com/zzgno1/p/3977846.html

    1.Log4j的使用核心在于:

      1)了解日志的优先级:ERROR > WARN > INFO > DEBUG

      2)得到记录器: private static final Logger logger = Logger.getLogger(name);name一般为当前类的全限定名

      3)根据日志需要的的级别调记录器logger对应的方法:比如logger.info(Object mesg),logger.warn(Object mesg)

    2.Log4j使用的难点在于配置文件log4j.properties(配置文件为该名称就不需要显式的加载了)的配置

      1)先配置根Logger:

         log4j.rootLogger = [ level ] , appenderName1, appenderName2...其中level为日志级别,表示输出等于该级别或者比该级别更高优先级的日志信息。且该内容必须配置,不然会报“ No appenders could be found for logger”,从而失效。如果配置了多个appendName,那么多个appendName都会按照配置的输出策略来输出日志,互不影响

      2)再为每一个appenderName配置具体的输出策略:

         a. 先配置该appendName的输出地点,从而选择合适的Appender接口的实现类

         b.再确定日志输出的地点的情况下,再配置输出的格式,从而选择具体的Layout抽象类的子类

         c.如果有需要可以配置该appendName的日志级别。不配置的话使用根Looger中的日志级别的配置,那如果配置了,选择的规则是:哪个优先级高就按照哪个优先级输出日志

         d.如果是往文件里输出,需要配置输出文件的路径(即使配置的路径下的文件夹或文件不存在,它也会帮我们创建的),以及是追加还是替换。默认是追加,这也是最常用的

    3.如果达到按照配置的日志级别,将日志分类输出,参考给出的链接就可以,核心是重写父类的 isAsSevereAsThreshold方法,按照优先级完全等于配置的优先级输出,而不是默认的等于或高于配置的优先级输出

    4.将Log4j整合到WEB项目中使用,参考链接:http://swiftlet.net/archives/683,讲的很好

  • 相关阅读:
    一个日志框架的开源,有些不错的创意。
    发现vs2005一个bug!庆祝一下!
    (新手文)偶说说什么是IoC (反向注入、依赖注入)
    数据库移植到sql server遇到的问题。
    Pixysoft.Framework.Configuration 开发实录
    Pixysoft.Framework.Noebe.Json 开发实录
    介绍一下我设计的工作流引擎,欢迎拍砖仍鸡蛋
    用mysql相当多问题。不是说开源不好,可是拜托,争争气吧
    设计之路——我的成果小报告
    黑客攻击:20090921 23:41:17:171
  • 原文地址:https://www.cnblogs.com/wanjn/p/7429494.html
Copyright © 2011-2022 走看看