`

Log4J通用配置|注意问题 笔记

阅读更多

关于日志的等级 那些去 百度就知道了!
这几天 要搭个新框架  配置了 日志 记下来 !做个备忘!

Java代码 复制代码
  1.  #这里定义能显示到的最低级别,若定义到INFO级别,则看不到DEBUG级别的信息了~!   
  2. log4j.rootLogger=INFO,allLog   
  3.   
  4. # DAO层 log记录到dao.log 控制台 和 总日志文件   
  5. log4j.logger.DAO=INFO,dao,Console,allLog      
  6.        
  7. # 业务层 log记录到service.log   控制台 和 总日志文件   
  8. log4j.logger.SERVICE=INFO,service,Console,allLog   
  9.   
  10. # 测试 及 日常日志打印  log记录到 common.log   控制台 和 总日志文件   
  11. log4j.logger.COMMON=INFO,common,Console,allLog   
  12.   
  13.   
  14.     
  15. log4j.appender.Console=org.apache.log4j.ConsoleAppender   
  16. log4j.appender.Console.layout=org.apache.log4j.PatternLayout   
  17. log4j.appender.Console.layout.ConversionPattern=%d %p - %C{1}.%M(%L) - %m%n   
  18.   
  19.     
  20. log4j.appender.service=org.apache.log4j.DailyRollingFileAppender   
  21. log4j.appender.service.file=${project.root}/WEB-INF/log/service.txt   
  22. log4j.appender.service.DatePattern='.'yyyy-MM-dd   
  23. log4j.appender.service.layout=org.apache.log4j.PatternLayout   
  24. log4j.appender.service.layout.ConversionPattern=%d %p - %C{1}.%M(%L) - %m%n   
  25.   
  26.     
  27. log4j.appender.allLog=org.apache.log4j.DailyRollingFileAppender   
  28. log4j.appender.allLog.file=${project.root}/WEB-INF/log/allLog.txt   
  29. log4j.appender.allLog.DatePattern='.'yyyy-MM-dd   
  30. log4j.appender.allLog.layout=org.apache.log4j.PatternLayout   
  31. log4j.appender.allLog.layout.ConversionPattern=%d %p - %C{1}.%M(%L) - %m%n   
  32.   
  33.     
  34. log4j.appender.dao=org.apache.log4j.DailyRollingFileAppender   
  35. log4j.appender.dao.file=${project.root}/WEB-INF/log/dao.txt   
  36. log4j.appender.dao.DatePattern='.'yyyy-MM-dd   
  37. log4j.appender.dao.layout=org.apache.log4j.PatternLayout   
  38. log4j.appender.dao.layout.ConversionPattern=%d %p - %C{1}.%M(%L) - %m%n   
  39.   
  40. log4j.appender.common=org.apache.log4j.DailyRollingFileAppender   
  41. log4j.appender.common.file=${project.root}/WEB-INF/log/common.txt   
  42. log4j.appender.common.DatePattern='.'yyyy-MM-dd   
  43. log4j.appender.common.layout=org.apache.log4j.PatternLayout   
  44. log4j.appender.common.layout.ConversionPattern=%d %p - %C{1}.%M(%L) - %m%n   
  45.   
  46.   
  47.    
 #这里定义能显示到的最低级别,若定义到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的资料


web.xml 配置如下

Java代码 复制代码
  1. <context-param>    
  2.         <param-name>webAppRootKey</param-name>   
  3.         <param-value>project.root</param-value>   
  4.     </context-param>   
  5.     <context-param>   
  6.         <param-name>log4jConfigLocation</param-name>   
  7.         <param-value>classpath:log.properties</param-value>   
  8.     </context-param>   
  9.     <context-param>   
  10.         <param-name>log4jRefreshInterval</param-name>   
  11.         <param-value>6000</param-value>   
  12.     </context-param>     
  13.    <context-param>   
  14.         <param-name>contextConfigLocation</param-name>   
  15.         <param-value>classpath:applicationContext.xml</param-value>   
  16.    </context-param>   
  17.   
  18.     <listener>     
  19.        <listener-class> org.springframework.web.util.Log4jConfigListener </listener-class>   
  20.     </listener>  
<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>




没什么好说的! 日志这东西 拿过去 能用就行了! 没什么会不会!

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics