A. 怎样将web项目的log4j日志文件放入当前的项目文件夹下
【6】log4j.appender.file.File=library.log 这里是日志文件,可以加上路径、可以是绝对路径也可以是相对的。
B. 如何查找log4j加载配置文件的位置
自动加载配置文件:
(1)如果采用log4j输出日志,要对log4j加载配置文件的过程有所了解。log4j启动时,默认会寻找source folder下的log4j.xml配置文件,若没有,会寻找log4j.properties文件。然后加载配置。配置文件放置位置正确,不用在程序中手动加载log4j配置文件。如果将配置文件放到了config文件夹下,在build Path中设置下就好了。
若要手动加载配置文件如下:
(1)PropertyConfigurator.configure("log4j.properties") 默认读取的是项目根目录的路径。此时的log4j.properties要放在项目目录下。
C. log4j2.xml文件放在哪个文件夹内
输出路径没有完美的解决办法。
log4j.rootLogger=debug,stdout,R1 -->>日志输出debug级别以上的到stdout(控制台) 和R1(自己随便定义的)
1.
log4j.appender.R1.File=/log.log -->>这种输出到 盘的 根目录下 (不推荐,win和linux 不同)
2.
log4j.appender.R1.File=logs/ydcardsys.log -->>项目文件中 (不推荐,容易清理掉)
3.
log4j.appender.R.File=${catalina.home}/logs/ydbudget.log (tomcat系的容器 这种方法不错,切到别的容器就不行了)
4.
web.xmlwebAppRootKeywebApp.rootlog4j.appender.R1.File=${webApp.root}logs/log.log
(这种方法的好处是不区分系统,不区分容器,缺点是会产生垃圾文件,${webApp.root} 在这个被赋值前有段日志不会在你想要的地方,当然妨碍不大,我用的就是这种)
D. log4j配置文件找不到
web-info/classes目录下,如果放在其它地方,需要在web.xml文件中配置路径。
E. log4j的使用步骤
1.将log4j-1.2.14.jar加入你的项目中;
2.在src/下创建log4j.properties|log4j.xml文件;
3.在web.xml中配置log4j的信息,如下:
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>/WEB-INF/classes/log4j.properties</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
4.在项目webroot下创建你想要保存日志文件的文件夹及文件,如webroot/logs/web_app.log;
具体log4j.properties文件,给你一个示例吧,如下:
log4j.rootLogger=INFO, stdout, logfile
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
#log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.appender.stdout.layout.ConversionPattern=- %m%n
log4j.appender.logfile=org.apache.log4j.RollingFileAppender
log4j.appender.logfile.File=${webapp.root}/logs/webapp.log
log4j.appender.logfile.MaxFileSize=512KB
# Keep three backup files.
log4j.appender.logfile.MaxBackupIndex=3
# Pattern to output: date priority [category] - message
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.logger.com.opensymphony.xwork2=ERROR
# Control logging for other open source packages
log4j.logger.org.springframework=ERROR
log4j.logger.org.quartz=ERROR
log4j.logger.net.sf.ehcache=ERROR
log4j.logger.net.sf.navigator=ERROR
log4j.logger.org.apache.commons=ERROR
log4j.logger.org.apache.struts=ERROR
# Struts OgnlUtil issues unimportant warnings
log4j.logger.com.opensymphony.xwork2.util.OgnlUtil=error
log4j.logger.com.opensymphony.xwork2.ognl.OgnlValueStack=error
具体写法可根据自己的项目进行配置。