我想在我的Java Web应用程序中使用log4j。我正在使用Tomcat 6. 问题是从未创建日志文件。log4j不能创建日志文件
的log4j.properties在classpath中,这意味着:
- MY_PROJECT名
- 的Java资源
- SRC
- 代码
- log4j.properties
在源代码中我使用:
private static Logger log = Logger.getLogger(myclass.class);
然后当我试图写一行:
log.error("here the error message", e);
而且,这里我log4j.properties文件:
log4j.rootLogger=A1,file
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d{ISO8601} %5p [%t] %c{1}:%L - %m%n
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.maxFileSize=5000KB
log4j.appender.file.maxBackupIndex=20
log4j.appender.file.File=URLFILE/file.log
log4j.appender.file.threshold=DEBUG
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{ISO8601} %5p [%t] %c{1}:%L - %m%n
为什么当我运行这个时,日志文件永远不会被创建?
检查文件权限(Tomcat需要写入)。另外,你在看'working directory/URLFILE/file.log'吗? – EthanB
是的,权限是可以的,其余的也可以。 log4j的是在classpath此外,在: 项目名 \t的Java资源 \t \t的Src \t \t代码 \t \t log4j.properties –
你的意思是'项目名/的Java /资源/ src目录/代码/ log4j.properties'? – EthanB