• 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,讲的很好

  • 相关阅读:
    Bellman-Ford(BF)和Floyd算法
    Dijkstra实现最短路径
    【图论】连通分量个数(并查集)
    【模拟】n a^o7 !
    【图论】最小生成树
    【搜索DFS】图的深度遍历(dfs)
    【搜索BFS】poj3278--Catch That Cow(bfs)
    【图论】判断给定图是否存在合法拓扑序列
    二叉排序树
    【树】判断给定森林中有多少棵树(简单做法)
  • 原文地址:https://www.cnblogs.com/wanjn/p/7429494.html
Copyright © 2020-2023  润新知