struts+log4j

1.在classes下建立两个配置文件commons-logging.properties和log4j.properties .
2.在commons-logging.properties里写入一行, org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger.
说明用的是log4j。
3.编写log4j.properties 文件

(1)、将log4j.properties文件直接放到classs目录下;
# Set root category priority to INFO and its only appender to CONSOLE.
#log4j.rootCategory=ERROR, LOGFILE
log4j.rootCategory=INFO, CONSOLE, LOGFILE
log4j.debug=true

# Set the enterprise logger category to FATAL and its only appender to CONSOLE.
log4j.logger.org.apache.axis.enterprise=INFO, CONSOLE

# CONSOLE is set to be a ConsoleAppender using a PatternLayout.
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Threshold=INFO
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=- %m%n

# LOGFILE is set to be a File appender using a PatternLayout.
log4j.appender.LOGFILE=org.apache.log4j.RollingFileAppender
log4j.appender.LOGFILE.File=webapps/ColorTone/logs/test.log

# 在windows平台可以不加后缀日志也能生成,
# 但在linix平台下需要加后缀。

log4j.appender.LOGFILE.Append=true
log4j.appender.LOGFILE.Threshold=ERROR
log4j.appender.LOGFILE.MaxFileSize=10000KB
log4j.appender.LOGFILE.MaxBackupIndex=1000
log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
log4j.appender.LOGFILE.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n

该配置文件说明:
同时输出到控制台和test.log文件中,log文件最大为10m,最大为1000个;
当一个日志文件达到最大尺寸时,Log4J会自动把test.log重命名为test.log.1,然后重建一个新的test.log文件,依次轮转;
在控制台输出的级别为info;
在日志文件输出为error级;

如果需要改为每天一个日志文件,则为:

代码
  1. # LOGFILE is set to be a File appender using a PatternLayout.   
  2. log4j.appender.LOGFILE=org.apache.log4j.DailyRollingFileAppender   
  3. log4j.appender.LOGFILE.File=webapps/ColorTone/logs/log   
  4. log4j.appender.LOGFILE.DatePattern =yyyy-MM-dd'.txt'   
  5. log4j.appender.LOGFILE.Append=true  
  6. log4j.appender.LOGFILE.Threshold=ERROR   
  7. log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout   
  8. log4j.appender.LOGFILE.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n   

以上配置是每天产生一个备份文件。其中备份文件的名字叫log。
具体的效果是这样:当天的日志信息记录在log文件中,前一天的记录在名称为 logyyyy-mm-dd.txt 的文件中。
类似的,如果需要每月产生一个文件可以修改上面的配置:

log4j.appender.R.DatePattern = '.'yyyy-MM-dd
改为
log4j.appender.R.DatePattern = '.'yyyy-MM

 

(2)、在ColorTone目录下建立logs目录

(3)、在action中增加
static Logger _log = Logger.getLogger(LoginAction.class.getName()); //log4j(1)
然后就可以在需要的地方进行日志记载
_log.debug("做下测试.debug");
_log.info("做下测试.info");
_log.warn("做下测试.warn");
_log.error("做下测试.error");
_log.fatal("做下测试.fatal");
注:日志文件最有有后缀,如logs.log,否则在linix版本下不能生成日志文件

posted on 2010-01-11 18:56  草原和大树  阅读(1676)  评论(0编辑  收藏  举报