大家在編程時經常不可避免地要使用到一些日誌操作,比如開發階段的調試資訊、運行時的日誌記錄及審計。調查顯示,日誌代碼佔代碼總量的4%。通常大家可以簡單地使用System.out.println()語句輸出日誌資訊,但是往往會有一些判斷,比如:
- if (someCondition) {
- System.out.println("some information.");
- }
這些判斷造成正常的程式邏輯中混雜了大量的輸出語句。而在開發階段寫下的這些判斷僅為了調試的語句,在開發完成時需要搜尋並移除。部署運行後,尤其是在一些企業應用系統中,還經常需要進一步調試,這時就遇到了更大的麻煩。所以,我們需要一套完備的、靈活的、可配置的日誌工具。Log4J就是優秀的選擇。
Log4J是Apache軟體基金會Jakarta項目下的一個子項目,是用Java編寫的優秀日誌工具包。通過Log4J可以在不修改代碼的情況下,方便、靈活地控制任意粒度的日誌資訊的開啟或關閉,然後使用定制的格式,把日誌資訊輸出到一個或多個需要的地方。並且,Log4J還有一條平滑的學習曲線,在三分鐘內就可學會它的簡單使用。隨著使用深入,你會發現Log4J功能的強大,幾乎可以滿足日誌方面的所有需要。