/*
*Author: Meanson Wang
*Date: 2005-01-15
*Email: meansonw@hotmail.com
*/
OSWORKFLOW-如何设置Osworkflow的日志及将级别设为[DEBUG]
工作流OSWORKFLOW使用的是Commons-logging组件来进行日志管理。但默认的日志级别是【DEBUG】,虽然HANI的手册中提到【注意,是提到】了设置日志的方法,却并不怎么灵光。看他的MAIL LIST,也是爱理不理,到也是,不喜欢写手册是每个程序员的通病,更别提手把手教你如何配置他的软件啦,“一点技术成分都没有”。呵呵。
其实很简单,了解了Commons-logging就一了百了。
Commons-logging最强的地方就是,它可以使用多个日志组件来记录日志,自动搜索你的【CLASSPATH】的日志组件,顺序是 log4j -> jdk1.4 logging api -> jakarta commons - logging SimpleLog,换句话说,你的系统可以用以上任何一种日志组件来进行日志记录。很多余?如果你的产品A用LOG4J,而产品B用logging api,老板让你把A嵌入到B里,你就不必那么头痛啦。
你可以用/WEB-INF/classes/commons-logging.properties来指定本系统的LOG组件:
log4j:
org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JCategoryLog
JDK 1.4 Logger
org.apache.commons.logging.Log=org.apache.commons.logging.impl.Jdk14Logger
JCL SimpleLog
org.apache.commons.logging.Log=org.apache.commons.logging.impl.SimpleLog
呵呵在这里我们入正题啦。其实要DEBUG OSWORKFLOW很简单的。就两步,我们的目标是用log4j来管理日志:
1.将log4j-1.2.8.jar放到\WEB-INF\lib里。
2.在/WEB-INF/classes/建立commons-logging.properties和log4j.properties文件。
【commons-logging.properties文件内容:指定用log4j】
org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JCategoryLog
【log4j.properties文件内容:配置log4j】
log4j.rootCategory=DEBUG, stdout, R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%d] %c{2} \"%m\"%n
#### Second appender writes to a file
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=../logs/Osworkflow.log
# Control the maximum log file size
log4j.appender.R.MaxFileSize=1024KB
# Archive log files (one backup file here)
log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%5p [%d] %c{2} \"%m\"%n
这里日志会有两个输出:控制台和文件,文件放在tomcat\logs\下面,osworkflow.log。