2015-06-10
2:33 PM
Log4j 算是最容易上手且最被廣泛使用的 Log 套件
但很多人常常卡在不知道該如何正確的佈署相關的設定
這裡將使用 Tomcat + Spring 搭配 Log4j 的 Web 專案作為範例
千萬不要認為 Log 不重要就不去設定他
在正式上線後可是得靠這個小動作來發現問題所在
Log 的重點在精不在多 如何精準的輸出足夠的資訊作為 Log 可是非常重要的
但關於 Log 的輸出經驗談就下次再說吧
首先我們得先了解如何設定才能往下一步走
程式碼範例
<!-- spring with log4j -->
<!-- 交由spring取得根目錄路徑 做為變數使用 -->
<!-- param-value的名稱不可與其他專案重複 -->
<!-- 若 Web Container 底下有多個專案使用相同名稱將會導致錯誤 -->
<context-param>
<param-name>webAppRootKey</param-name>
<param-value>web.root</param-value>
</context-param>
<!-- log4j設定擋 -->
<!-- 此處將告訴 Spring log4j.properties 設定檔位於 classpath 底下-->
<!-- 也就是在 Maven 開發環境中的 res 目錄內 -->
<!-- 若要置於 WEB-INF 底下則可以使用 /WEB-INF/log4j.properties 這樣的路徑設定 -->
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:log4j.properties</param-value>
</context-param>
<!-- 重新讀取 log4j 設定檔時間(毫秒) 可不用重新啟動 Tomcat -->
<context-param>
<param-name>log4jRefreshInterval</param-name>
<param-value>1000</param-value>
</context-param>
<!-- 使用 Spring 的 Log4jConfigListener 讀取 log4j 設定 -->
<listener>
<listener-class>
org.springframework.web.util.Log4jConfigListener
</listener-class>
</listener>
<!-- -->
各項資料連結
Spring
Apache Log4j 1.2.x
Apache Tomcat
No comments:
Post a Comment