springmvc log4j配置

1. web.xmlweb

<!-- 加載Log4J 配置文件  -->  
<context-param>  
    <param-name>log4jConfigLocation</param-name>  
    <param-value>WEB-INF/conf/log4j.properties</param-value>  
</context-param>     
  
<context-param>  
    <param-name>log4jRefreshInterval</param-name>  
      <param-value>3000</param-value>  
 </context-param>  
  
<listener>  
    <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>  
 </listener>  
log4jConfigLocation 配置log4j.properties 文件的位置。也能夠這樣配置 classpath:log4j.properties

2. 日誌文件的位置spring

1)絕對路徑apache

log4j.appender.R.File=D:/log/xxx.logtomcat

2)相對路徑:app

log4j.appender.R.File=../logs/app.log,將日誌記錄到tomcat下的logs文件夾;框架

log4j.appender.R.File=logs/app.log,將日誌記錄到tomcat的bin目錄下的logs文件夾;jvm

(3)使用環境變量相對路徑法:程序會優先找jvm環境變量,而後再找系統環境變量,來查找配置文件中的變量。
        log4j.appender.logfile.File=${user.dir}/logs/app.log,使用tomcat容器時${user.dir}對應tomcat的bin目錄;
        log4j.appender.logfile.File=${user.home}/logs/app.log,${user.home}對應操做系統當前用戶目錄;
        log4j.appender.logfile.File=${webApp.root}/logs/app.log,${webApp.root}對應當前應用根目錄;
3. 不一樣框架的日誌分開存儲:
#all logger output level is 'ERROR' and output position is stdout
#so only write our project's DEBUG log and ERROR log of the others
log4j.rootLogger=ERROR, stdout, R
#log4j.appender is set output postion
#log4j.logger is set some package(some package your want output logger specially)=[output level],[...output position]

log4j.logger.org.springframework=OFF  
log4j.logger.org.apache.commons=OFF 
log4j.logger.org.apache.struts=OFF   
log4j.logger.org.hibernate=OFF

#log4j.logger.org.logicalcobwebs=OFF

#only write our project's log(DEBUG)
log4j.logger.com.mycompany=DEBUG

log4j.logger.org.apache.commons.dbcp=DEBUG, dbcp
#log4j.logger.org.logicalcobwebs.proxool=DEBUG, proxool

#log4j.logger.org.springframework=DEBUG, spring

log4j.logger.org.apache.catalina.core=DEBUG, catalina

#in the console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
#config stdout position output contain INFO level and up
log4j.appender.stdout.Threshold=DEBUG
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.ConversionPattern=[%-5p] %l:%t - %m %n

#in the daily files
log4j.appender.R=org.apache.log4j.DailyRollingFileAppender
log4j.appender.R.Threshold=DEBUG
log4j.appender.R.File=D:/EMR/log/EMR.log
log4j.appender.R.DatePattern='.'yyyy-MM-dd'.log'
log4j.appender.R.layout=org.apache.log4j.PatternLayout 
log4j.appender.R.layout.ConversionPattern=%d [%-5p] %l:%t - %m %n

log4j.logger.com.statestr=DEBUG

log4j.appender.dbcp=org.apache.log4j.DailyRollingFileAppender
log4j.appender.dbcp.Threshold=DEBUG
log4j.appender.dbcp.File=D:/EMR/log/dbcp.log
log4j.appender.dbcp.DatePattern='.'yyyy-MM-dd'.log'
log4j.appender.dbcp.layout=org.apache.log4j.PatternLayout 
log4j.appender.dbcp.layout.ConversionPattern=%d [%-5p] %l:%t - %m %n

log4j.appender.proxool=org.apache.log4j.DailyRollingFileAppender
log4j.appender.proxool.Threshold=DEBUG
log4j.appender.proxool.File=D:/EMR/log/proxool.log
log4j.appender.proxool.DatePattern='.'yyyy-MM-dd'.log'
log4j.appender.proxool.layout=org.apache.log4j.PatternLayout 
log4j.appender.proxool.layout.ConversionPattern=%d [%-5p] %l:%t - %m %n

log4j.appender.spring=org.apache.log4j.DailyRollingFileAppender
log4j.appender.spring.Threshold=DEBUG
log4j.appender.spring.File=D:/EMR/log/spring.log
log4j.appender.spring.DatePattern='.'yyyy-MM-dd'.log'
log4j.appender.spring.layout=org.apache.log4j.PatternLayout 
log4j.appender.spring.layout.ConversionPattern=%d [%-5p] %l:%t - %m %n

log4j.appender.catalina=org.apache.log4j.DailyRollingFileAppender
log4j.appender.catalina.Threshold=DEBUG
log4j.appender.catalina.File=D:/EMR/log/catalina.log
log4j.appender.catalina.DatePattern='.'yyyy-MM-dd'.log'
log4j.appender.catalina.layout=org.apache.log4j.PatternLayout 
log4j.appender.catalina.layout.ConversionPattern=%d [%-5p] %l:%t - %m %n

4. 關閉日誌post

log4j.logger.org.springframework=OFF  
log4j.logger.org.apache.commons=OFF 
log4j.logger.org.apache.struts=OFF   
log4j.logger.org.hibernate=OFF

或者
log4j.logger.org.springframework=WARN  
log4j.logger.org.apache.commons=WARN 
log4j.logger.org.apache.struts=WARN 
log4j.logger.org.hibernate=WARN
相關文章
相關標籤/搜索