憨厚生

----Java's Slave----
***Java's Host***

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  165 随笔 :: 17 文章 :: 90 评论 :: 0 Trackbacks
在下载struts相关类文件的时候,包内已包括commons-logging.jar。这个文件只包括SimpleLog和NoOpLog两种日志的实现。如果采用第3方日志实现,如Log4J,则应该单独下载它的包文件,把JAR文件放到WEB-INF/lib目录下。
(1)指定日志器
通用日志接口从名为“commons-logging.properties”属性文件中获取实现日志接口的日志器信息。在该文件中的“org.apache.commons.logging.Log”属性指定日志实现类。如果采用Log4J日志器,则此属性做如下设置:
org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JCategoryLog。
(2)配置日志器[这里说的是Log4J的配置]
Log4J有三个组件构成,Logger,Appender和Layout.Log4J支持两种配置文件:一种是XML格式的文件,一种是java属性文件。下面介绍如何已JAVA属性文件的格式来创建Log4J的配置文件。配置Log4J,主要的设置Logger,Appender和Layout的属性。
1,配置Logger组件。
Logger组件支持继承关系,所有的Logger组件都直接或间接的继承rootLogger。配置语法为:log4j.rootLogger=[priority],appenderName1,appenderName2
priority为日志级别,可选值包括OFF,FATAL,ERROR,WARN,INFO,DEBUG,TRACE,ALL。
appenderName指定Appender组件,用户可以同时指定多个Appender组件
例子:
#configure root logger
log4j.rootLogger=INFO,console
#define a logger named helloapplogger
log4j.logger.helloapplogger=DEBUG,console
2,配置Appender组件
这个主件就是配置日志消息输出的目的地。语法为:
log4j.appender.appenderName=fully.qualified.name.of.appender.class
log4j.appender.appenderName.option1=value1
..........................................
Log4J提供的Appender有一下几种:
org.apache.log4j.ConsoleAppender(控制台)
org.apache.log4j.FileAppender(文件)
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
org.apache.log4j.RollingFileAppender(文件大小达到指定尺寸的时候产生一个新的文件)
org.apache.log4j.WriterFileAppender(将日志的消息以流格式发送到任意的地方)
例子:
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=log.txt
3,配置Layout组件
配置语法为:
log4j.appender.appenderName.layout=fully.qualified.name.of.layout.class
log4j.appender.appenderName.layout.option1=value1
.................................................
Log4J提供的Layout有一下几种:
org.apache.log4j.HTMLLayout(以HTML表格形式布局)
org.apache.log4j.PatternLayout(灵活指定布局格式)
org.apache.log4j.SimpleLayout(包含日志消息的级别和信息字符串)
org.apache.log4j.TTCCLayout(包含日志产生的时间,线程和类别信息)
例子:
log4j.appender.console.layout=org.apache.log4j.SimpleLayout
以上算是把log4J给配置好了。下面是讲在程序中如何访问它。主要分为3步。
1、获得日志器。
获得rootLogger:
Logger rootLogger=Logger.getRootLoger();
获取自定义的日志器:
Logger helloappLogger=Logger.getLogger("helloappLogger");
2、读取配置文件,配置Log4J环境。
BasicConfigurator.configure();自动快速地使用默认Log4J环境
PropertyConfigurator.configure(String configfilename);读取JAVA属性文件并配置Log4J环境
DOMConfigurator.configure(String filename);读取XML形式的培植文件并配置Log4J环境。
3、输出日志信息。
helloappLogger.warn("This in a log message from the"+helloappLogger.getName());

希望以上内容对大家学习log4j有帮助
posted on 2006-04-20 17:17 二胡 阅读(275) 评论(3)  编辑  收藏

评论

# re: 学习log4j的一点体会 2006-04-20 21:37 JrJr
加油啊  回复  更多评论
  

# re: 学习log4j的一点体会 2006-04-21 14:20 柱子
过来看看 呵呵  回复  更多评论
  

# re: 学习log4j的一点体会 2006-05-11 13:06 laoflch
写的不错,继续努力哦!  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: