在tomcat的某站點下使用log4j,配置文件log4j.properties在WEB-INF/classes下
內容如下
- Java code
log4j.rootCategory=WARN,R#log4j.appender.stdout=org.apache.log4j.ConsoleAppender#log4j.appender.stdout.layout=org.apache.log4j.PatternLayout#log4j.appender.stdout.layout.ConversionPattern=%p [%d{yyyy-MM-dd HH:mm:ss}] (%F:%L)%n%m%n%nlog4j.appender.R=org.apache.log4j.FileAppenderlog4j.appender.R.File=/u04/software/tomcat/webapps/prdquot/logs/log4jlog.loglog4j.appender.R.layout=org.apache.log4j.PatternLayoutlog4j.appender.R.layout.ConversionPattern=%p [%d{yyyy-MM-dd HH:mm:ss}]%n%m%n%n#log4j.appender.R.File=I:/tomcat/webapps/prdquot/logs/log4jlog.loglog4j.appender.R.MaxFileSize=20480KBlog4j.appender.R.threshold=ERROR
在windows下使用沒有問題,能夠正常輸出日誌,但是放到linux中的時候就不產生日誌文件,也沒出錯.
記錄的日誌有輸出到tomcat/logs下的catalina.out,但是站點下的logs卻沒有日誌文件.
請教各位這是什麽原因? 我的分不多,希望大家能幫幫我.
------解决方案--------------------------------------------------------
这个。。。还真不知道呢,没在linux下用过log4j,纯粹帮你顶下了
------解决方案--------------------------------------------------------
保证在日志目录下保证启动此tomcat的角色有建立文件的权限,你log4j最好指明文件大小。
示例:
- Java code
og4j.rootLogger=DEBUG, stdout, RFAlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.Threshold=DEBUGlog4j.appender.stdout.layout=org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern=%5p: [%d] %c{1} - %m%n# Appender RFA writes to the file "my.log" in tomcat's logs dirlog4j.appender.RFA=org.apache.log4j.RollingFileAppenderlog4j.appender.RFA.File=${CATALINA_HOME}/logs/my.loglog4j.appender.RFA.MaxFileSize=200KB# Keep one backup filelog4j.appender.RFA.MaxBackupIndex=10# Don't truncate if log file aleady exists.log4j.appender.RFA.Append=true# Appender RFA uses the PatternLayout.log4j.appender.RFA.layout=org.apache.log4j.PatternLayoutlog4j.appender.RFA.layout.ConversionPattern=%5p: [%d] %c{1} - %m%n
------解决方案--------------------------------------------------------
确定当前用户在指定日志文件所在的文件夹具有写权限
------解决方案--------------------------------------------------------
### set log levels ###
log4j.rootLogger = info ,stdout, D
### \u8f93\u51fa\u5230\u63a7\u5236\u53f0 ###
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss,SSS} [%p]-[%c] %m%n
### \u8f93\u51fa\u5230\u65e5\u5fd7\u6587\u4ef6 ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = /usr/Lottery/tomcat/logs/log.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = info
## \u8f93\u51faDEBUG\u7ea7\u522b\u4ee5\u4e0a\u7684\u65e5\u5fd7
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [%p]-[ %t:%r ] %m%n
### \u4fdd\u5b58\u5f02\u5e38\u4fe1\u606f\u5230\u5355\u72ec\u6587\u4ef6 ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = /usr/Lottery/tomcat/logs/error.log
## \u5f02\u5e38\u65e5\u5fd7\u6587\u4ef6\u540d
log4j.appender.D.Append = true
log4j.appender.D.Threshold = ERROR
## \u53ea\u8f93\u51faERROR\u7ea7\u522b\u4ee5\u4e0a\u7684\u65e5\u5fd7!!!
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [%p]- [ %t:%r ] %m%n
这个是我以前用过的,项目也是部署在linux下,你可以参考一下