2014年9月28日
摘要: 背景 由于现在开源框架日益丰富,好多开源框架使用的日志组件不尽相同。存在着在一个项目中,不同的版本,不同的框架共存。导致日志输出异常混乱。虽然也不至于对系统造成致命伤害,但是明显可以看出,架构不够精良,追求极致略有不足。 其中有一些标准通用接口,标准实现,各种桥接器的存在,下面就让笔者树立一下这些框架之间的关系。 从上图中,我们可以看到4部分。 阅读全文
posted @ 2014-09-28 23:30 上校 阅读(25647) 评论(0) 推荐(2)
摘要: 前面有一篇日志中简单的介绍了 log4j,同时也介绍了它与commons-logging的关系,但是突然冒出来一个slf4j,并且slf4j有取代commons-logging的趋势,所以,我们可以推知slf4j与commons-logging的作用应该 相差不大的。 好,下面开始先讲讲slf4j。 1.slf4j 他只提供一个核心slf4j api(就是slf4j-api.jar包),这个包只有日志的接口,并没有实现,所以如果要使用就得再给它提供一个实现了些接口的日志包,比 如:log4j,common logging,jdk log日志实现包等,但是这些日志实现又不能通过接口直接调用,实现上他们根本就和slf4j-api不一致,因此slf4j又增加了一层来转换各日志实 现包的使用,当然slf4j-simple除外。 阅读全文
posted @ 2014-09-28 22:35 上校 阅读(6376) 评论(1) 推荐(3)
摘要: 首先,在项目中的classes 中新建立一个log4j.properties文件即可; 在实际编程时,要使Log4j真正在系统中运行事先还要对配置文件进行定义。定义步骤就是对Logger、Appender及Layout的分别使用。Log4j支持两种配置文件格式,一种是XML格式的文件,一种是java properties(key=value)【Java特性文件(键=值)】。(这里只说明properties文件) 1、配置根Logger 其语法为: log4j.rootLogger = [ level ] , appenderName1, appenderName2, … level : 是日志记录的优先级,分为OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者您定义的级别。Log4j建议只使用四个级别,优先级从高到低分别是ERROR、WARN、INFO、DEBUG。通过在这里定义的级别,您可以控制到应用程序中相应级别的日志信息的开关。比如在这里定义了INFO级别,则应用程序中所有DEBUG级别的日志信息将不被打印出来。 阅读全文
posted @ 2014-09-28 21:42 上校 阅读(1342) 评论(0) 推荐(0)