摘要:
写在前面的话 log4j支持自定义的输出。所有的输出都实现了自Appender接口。一般来说,自定义输出值需要继承AppenderSkeleton类,并实现几个方法就可以了。 写这篇博客,我主要也是想说,框架之所有被成为是一个框架,是在帮我们完成大部分的通用代码,这就有一个前提就是说... 阅读全文
摘要:
本文转自上善若水的博客,原文出处:http://www.blogjava.net/DLevin/archive/2012/07/10/382678.html。感谢作者的无私分享。 LoggerRepository从字面上理解,它是一个Logger的容器,它会创建并缓存Logger实例,从而... 阅读全文
摘要:
本文转自上善若水的博客,原文出处:http://www.blogjava.net/DLevin/archive/2012/07/10/382676.html。感谢作者的无私的分享。 Appender负责定义日志输出的目的地,它可以是控制台(ConsoleAppender)、文件(FileAp... 阅读全文
摘要:
本文转载上善若水的博客,原文出处:http://www.blogjava.net/DLevin/archive/2012/07/04/382131.html。感谢作者的分享。 Layout负责将LoggingEvent中的信息格式化成一行日志信息。对不同格式的日志可能还需要提供头和尾等信... 阅读全文
摘要:
经常写博客,但是一般没怎么注意些目录,最近看别人写的博客都有目录,所以我也想在以后写好目录,这样子也方便阅读。 这里就写一个实验: 这里一级目录 这里是一级目录下的文本。林肯公园 这里是1.1目录 这里是1.1目录下的文本。LinkinPark 这里是1.1.1目录 systemt... 阅读全文
摘要:
原文出处:http://www.blogjava.net/DLevin/archive/2012/06/28/381667.html。感谢上善若水的无私分享。 在简单的介绍了Log4J各个模块类的作用后,以下将详细的介绍各个模块的具体作用以及代码实现。 Logger类 Logger是对... 阅读全文
摘要:
OK,现在我们来研究Log4j的源码: 这篇博客有参照上善若水的博客,原文出处:http://www.blogjava.net/DLevin/archive/2012/06/28/381667.html。感谢作者的无私分享。 Log4J将写日志功能抽象成七个核心类或者接口:Logger、... 阅读全文
摘要:
OK,上一篇博客我们已经实现了日志框架的基本的功能,但是还有一个最大的问题就是日志输出地不能重定向,然后一些输出也不可控。那现在我们来实现一个比较完整的日志框架。 设计思路如下: 1,定义一堆常量LinkinLog4jConstants,这些常量用于框架中日志输出的配置项,为了简单和方便... 阅读全文