Jakarta Commons Logging(JCL)

原文链接http://www.blogjava.net/chhbjh/archive/2005/09/07/12305.html

 

简介JCL提供一个日志接口,同时兼顾轻量级和不依赖于具体的日志实现工具。

入门JCL有两个基本的抽象类:Log(基本纪录器)LogFactory(负责创建Log实例)JCL寻找日志工具的过程如下:

一〉              寻找当前的factory中名叫org.apache. commons.logging.Log配置属性的值。

二〉              寻找系统属性中名叫org.apache.commons.logging.Log的值。

三〉              如果应用程序的CLASSPATH中有Log4j,这是用相关的包装类(wrapper)类(Log4Jlogger.

四〉              如果应用程序运行在jdk1.4的系统中,使用相关的包装类(JDK1.4logger).

五〉              使用简易日志包装类(SimpleLog.

使用logging:

import org.apache.commons.logging.Log;

import org.apache.commons.logging.LogFactory;

public class MyClass{

private static Log log=LogFactory.getLog(this.CLASS);

…………………………

}

 

#不知道为什么这里我只能这样

#private static Log log = LogFactory.getLog(Test.class);

#Test是我的类名

 

这些日志信息被送往日志器,如上例中的log

Log接口中的方法:

定义日志信息的级别,按严重性有:

log.fatal(Object message);

log.fatal(Object message,Throwable t);

log.error(Object message);

log.error(Object message,Throwable t);

log.warn(Object message);

log.warn(Object message,Throwable t);

log.info(Object message);

log.info(Object message,Throwable t);

log.debug(Object message);

log.debug(Object message,Throwable t);

log.trace(Object message);

log.trace(Object message,Throwable t);

fatal:非常严重的错误,导致系统终止。期望这类信息被立即显示到状态控制台上。

Error:其他运行期错误或不是预期的条件。期望这类信息被立即显示到状态控制台上。

Warn:使用了不赞成使用的API、非常拙劣的使用了API、‘几乎就是错误’其他运行期不合需要和不合预期的状态(但没必要将其称为错误)。期望这类信息被立即显示到状态控制台上。

Info:运行期产生的有意义的事件。期望这类信息被立即显示到状态控制台上。

Debug:系统流程中的细节信息。期望这类信息仅被写入日志文件中。

Trace:更加细节的信息。期望这类信息仅被写入日志文件中。

用于代码保护(表示如果启用了某种日志信息级别)

log.isFatalEnabled();

log.isErrorEnabled();

log.isWarnEnabled();

log.isInfoEnabled();

log.isDebugEnabled();

log.isTraceEnabled();

通常情况下,记录器的级别不低于info,通常情况下debug信息不应被写入log文件中。

工作机理:

一〉             生命周期:JCL LogFactory必须实现建立/断开到日志工具的连接,实例化/初始化/解构一个日志工具。

二〉             异常处理:JCL Log接口没有实现任何异常处理,对接口的实现必须捕获并处理异常。

 

记录器的设置:log4jJCL的首选记录器:

 

 

参数值域默认值说明
Log4j.configuration Log4j.properties指定配置文件的名字
Log4j.rootCategory Log4j.appender..Threshold 设定根记录器级别
Log4j.logger.ebug,info,trace,error,fatal 设定这个记录器的级别  
Log4j.appender..Thresholdpriority 指定纪录设备的最低级别(console,files,sockets,others  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值