【日志】日志扫盲

1. java commons-logging:是一个日志接口,允许程序开发人员使用不同的具体日志实现工具,包括Log4J, Avalon LogKit, and JDK LOG等.JCL有两个基本的抽象类:Log(基本记录器)和LogFactory(负责创建Log实例)。当commons-logging.jar被加入
到CLASSPATH之后,默认的LogFactory是按照下列的步骤去发现并决定那个日志工具将被使用

  • 寻找当前factory中名叫org.apache.commons.logging.Log配置属性的值
  • 寻找系统中属性中名叫org.apache.commons.logging.Log的值
  • 如果应用程序的classpath中有log4j,则使用相关的包装(wrapper)类(Log4JLogger)
  • 如果应用程序运行在jdk1.4的系统中,使用相关的包装类(Jdk14Logger)
  • 使用简易日志包装类(SimpleLog)

2. SLF4J不是具体的日志解决方案,它只服务于各种各样的日志系统。按照官方的说法,SLF4J是一个用于日志系统的简单Facade,允许最终用户在部
署其应用时使用其所希望的日志系统。等同于JCL,都是facade层次的东东。
   相对JCL,优点如下:

  • 超超超低依赖性
  • 透明切换不同是日志实现方式
  • 编译器绑定底层实现的方式,不会有classloader问题
  • 性能更佳
  • 已经Hibernate、Jetty、Spring-OSGi、Tapestry等项目中使用
  • 完善又免费的文档

slf4j 常用jar包:

slf4j-log4j12-1.6.0.jar

 

Binding for  log4j version 1.2 , a widely used logging framework. You also need to place  log4j.jar  on your class path.
slf4j-jdk14-1.6.0.jar
Binding for java.util.logging, also referred to as JDK 1.4 logging
slf4j-nop-1.6.0.jar
Binding for  NOP , silently discarding all logging.
slf4j-simple-1.6.0.jar
Binding for  Simple  implementation, which outputs all events to System.err. Only messages of level INFO and higher are printed. This binding may be useful in the context of small applications.
slf4j-jcl-1.6.0.jar
Binding for  Jakarta Commons Logging . This binding will delegate all SLF4J logging to JCL.
jcl-over-slf4j.jar
will allow your project to migrate to SLF4J piecemeal, without breaking compatibility with existing software using JCL. Similarly, log4j-over-slf4j.jar and jul-to-slf4j modules will allow you to redirect log4j and respectively java.util.logging calls to SLF4J. See the page on Bridging legacy APIs  for more details.
使用common-loggin的接口,底层还是由SLF4J来决定哪种实现机制 。这个可以使老的使用commons-logging无缝迁移到slf4j.这地盘抢的到位。
 


 

3. 一般facade都是结合Log4J使用。but,SLF4J的作者就是Log4j的作者,他正在开发来

代替log4j,logback有更高的性能.who care,日志只是事后弥补的东西,会用即可,无需太深入。
Logback 替代 Log4J 的十几个理由:Reasons to
prefer logback over log4j,说的大至是更快;好测试;与 SLF4J 关系紧;文档丰富;能自动加载配置文件;多个 JVM
写一个日志文件,或其他 I/O 
错误时不影响程序执行;配置文件中加入条件控制;强大的日志过滤;更强的日志切分功能;自动压缩、删除日志文件;异常栈中更多的数据信息。
Logback
分为三个模块:logback-core,logback-classic,logback-access。logback-core 
是核心;logback-classic 改善了 log4j,且自身实现了 SLF4J API,所以即使用 Logback 
你仍然可以使用其他的日志实现,如原始的 Log4J,java.util.logging 等;logback-access 
让你方便的访问日志信息,如通过 http 的方式。 
还得提一点,Logback 能更好的放到 OSGI 环境中。好了,简单绍完了
Logback,就来看看具体怎么用它。 

4. step by step

 

网上还有篇文章,记着待验证:

http://hi.baidu.com/hxzon/blog/item/2b549f25cd563e6a35a80f78.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值