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
具體寫法可根據自己的項目進行配置。