Spring集成log4j日誌管理

在使用Spring框架的時候,我們可以很方便的配置log4j來進行日誌管理。

進行配置之前,首先得下載jar包(log4j-1.2.11.jar)

配置如下:

1.在web.xml中最上面加入如下配置代碼:

 <!--log4j配置文件加載-->
    <context-param>    
        <param-name>log4jConfigLocation</param-name>    
        <param-value>/WEB-INF/log4j.properties</param-value>    
    </context-param>
    <!--啓動一個watchdog線程每1800秒掃描一下log4j配置文件的變化-->
    <context-param>    
        <param-name>log4jRefreshInterval</param-name>    
        <param-value>1800000</param-value>    
    </context-param> 
    <!--spring log4j監聽器-->
    <listener>    
        <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>    
    </listener>

2.把log4j.properties配置文件放在上面配置的指定的目錄下

log4j.properties配置文件:

######################################
#         log4j配置相關說明
######################################

#%p 輸出優先級,即DEBUG,INFO,WARN,ERROR,FATAL 
#%r 輸出自應用啓動到輸出該log信息耗費的毫秒數 
#%c 輸出所屬的類目,通常就是所在類的全名 
#%t 輸出產生該日誌事件的線程名
#%m 輸出代碼中指定的信息 
#%n 輸出一個回車換行符,Windows平臺爲“\r\n”,Unix平臺爲“\n” 
#%d 輸出日誌時間點的日期或時間,默認格式爲ISO8601,也可以在其後指定格式,比如:%d{yyyy MM dd HH:mm:ss,SSS},輸出類似: 2002年10月18日 22:10:28,921 
#%l 輸出日誌事件的發生位置,包括類目名、發生的線程,以及在代碼中的行數。舉例:Testlog4.main(TestLog4.java:10) 

#log4j提供4種佈局: 
#org.apache.log4j.HTMLLayout(以HTML表格形式佈局)
#org.apache.log4j.PatternLayout(可以靈活地指定佈局模式),
#org.apache.log4j.SimpleLayout(包含日誌信息的級別和信息字符串),
#org.apache.log4j.TTCCLayout(包含日誌產生的時間、線程、類別等等信息

#log4j中有五級logger 輸出級別:
#FATAL 0 
#ERROR 3 
#WARN 4 
#INFO 6 
#DEBUG 7

######################################
#          log4j相關配置
######################################

#日誌輸出級別
log4j.rootLogger=INFO,stdout,other

#設置stdout的日誌輸出控制檯
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
#輸出日誌到控制檯的方式,默認爲System.out
log4j.appender.stdout.Target = System.out
#設置使用靈活佈局
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
#靈活定義輸出格式
log4j.appender.stdout.layout.ConversionPattern=[%p][%d{yyyy-MM-dd HH:mm:ss}] %l %m %n  

#設置other的日誌輸出控制檯
log4j.appender.other=org.apache.log4j.RollingFileAppender
#設置other的輸出日誌
log4j.appender.other.File=${webapp.root}/WEB-INF/logs/log.log
#設置other的日誌最大限制
log4j.appender.other.MaxFileSize=1024KB
#最多隻保存20個備份文件
log4j.appender.other.MaxBackupIndex=1000
#輸出INFO級別以上的日誌
og4j.appender.other.Threshold=INFO 
#設置使用靈活佈局
log4j.appender.other.layout=org.apache.log4j.PatternLayout
#靈活定義輸出格式
log4j.appender.other.layout.ConversionPattern=[%p][%d{yyyy-MM-dd HH:mm:ss}] %l %t %m %n  

######################################
#       hibernate相關配置
######################################

#輸出hibernate調試過程中的錯誤日誌
log4j.logger.org.hibernate=other
#輸出HQL查詢調試日誌
log4j.logger.org.hibernate.hql.ast.AST=other
#輸出SQL語句調試日誌
log4j.logger.org.hibernate.SQL=other
#輸出 JDBC參數查詢的日誌
log4j.logger.org.hibernate.type=other
#輸出緩存日誌 
log4j.logger.org.hibernate.cache=other
#輸出事務日誌
log4j.logger.org.hibernate.transaction=other
#輸出獲取JDBC資源日誌
log4j.logger.org.hibernate.jdbc=other


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