Log4J通用配置|注意問題 筆記

 #這裏定義能顯示到的最低級別,若定義到INFO級別,則看不到DEBUG級別的信息了~!
log4j.rootLogger=INFO,allLog

# DAO層 log記錄到dao.log 控制檯 和 總日誌文件
log4j.logger.DAO=INFO,dao,Console,allLog   
    
# 業務層 log記錄到service.log   控制檯 和 總日誌文件
log4j.logger.SERVICE=INFO,service,Console,allLog

# 測試 及 日常日誌打印  log記錄到 common.log   控制檯 和 總日誌文件
log4j.logger.COMMON=INFO,common,Console,allLog


 
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d %p - %C{1}.%M(%L) - %m%n

 
log4j.appender.service=org.apache.log4j.DailyRollingFileAppender
log4j.appender.service.file=${project.root}/WEB-INF/log/service.txt
log4j.appender.service.DatePattern='.'yyyy-MM-dd
log4j.appender.service.layout=org.apache.log4j.PatternLayout
log4j.appender.service.layout.ConversionPattern=%d %p - %C{1}.%M(%L) - %m%n

 
log4j.appender.allLog=org.apache.log4j.DailyRollingFileAppender
log4j.appender.allLog.file=${project.root}/WEB-INF/log/allLog.txt
log4j.appender.allLog.DatePattern='.'yyyy-MM-dd
log4j.appender.allLog.layout=org.apache.log4j.PatternLayout
log4j.appender.allLog.layout.ConversionPattern=%d %p - %C{1}.%M(%L) - %m%n

 
log4j.appender.dao=org.apache.log4j.DailyRollingFileAppender
log4j.appender.dao.file=${project.root}/WEB-INF/log/dao.txt
log4j.appender.dao.DatePattern='.'yyyy-MM-dd
log4j.appender.dao.layout=org.apache.log4j.PatternLayout
log4j.appender.dao.layout.ConversionPattern=%d %p - %C{1}.%M(%L) - %m%n

log4j.appender.common=org.apache.log4j.DailyRollingFileAppender
log4j.appender.common.file=${project.root}/WEB-INF/log/common.txt
log4j.appender.common.DatePattern='.'yyyy-MM-dd
log4j.appender.common.layout=org.apache.log4j.PatternLayout
log4j.appender.common.layout.ConversionPattern=%d %p - %C{1}.%M(%L) - %m%n

Log4J配置後, log4j:ERROR setFile(null,true) call failed. 報錯:java.io.FileNotFoundException: \log\mytest2.log (系統找不到指定的路徑。) 收藏 
是log4j.properties與tomcat的log4j重名的原因 

你把/WEB-INF/classes/log4j.properties的log4j配置文件改個名字就OK了!(如:log.properties) 

因爲在tomcat啓動是默認去找log4j.properties,但此時Listener還沒有起來,tomcat就要往\WEB-INF\logs\log4j.log 寫日誌就找不到了 
相關spring log4j的資料 
Log4J配置後, log4j:ERROR setFile(null,true) call failed. 報錯:java.io.FileNotFoundException: \log\mytest2.log (系統找不到指定的路徑。) 收藏 
是log4j.properties與tomcat的log4j重名的原因 

你把/WEB-INF/classes/log4j.properties的log4j配置文件改個名字就OK了!(如:log.properties) 

因爲在tomcat啓動是默認去找log4j.properties,但此時Listener還沒有起來,tomcat就要往\WEB-INF\logs\log4j.log 寫日誌就找不到了 
相關spring log4j的資料 


web.xml 配置如下 


<context-param> 
		<param-name>webAppRootKey</param-name>
		<param-value>project.root</param-value>
	</context-param>
	<context-param>
		<param-name>log4jConfigLocation</param-name>
		<param-value>classpath:log.properties</param-value>
	</context-param>
	<context-param>
		<param-name>log4jRefreshInterval</param-name>
		<param-value>6000</param-value>
	</context-param>	
   <context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>classpath:applicationContext.xml</param-value>
   </context-param>

	<listener>  
	   <listener-class> org.springframework.web.util.Log4jConfigListener </listener-class>
	</listener>



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章