Java log4j的環境搭建

來源:互聯網
上載者:User

標籤:

一、Log4j是什嗎?

Log4j是Apache的一個開原始碼項目,通過使用Log4j,我們可以控制日誌資訊輸出的目的地。最常見的就是輸出到控制台或者記錄檔。同時,它強大的一點是可以在C、C++等其他程式中使用,只要有相關的介面包即可。

二、如何在Java環境下配置Log4j?

網上的好多做法要麼照本宣科,解釋的太繁瑣,要麼太簡略,讓人不得要領,其實步驟非常簡單。

Log4j支援兩種設定檔格式:XML、Log4j.properties.

我習慣選擇後者。

一般只要將該檔案放在項目的根目錄下即可。

在項目中使用log,只需要匯入一個叫log4j-XXXX(版本號碼).jar的包即可。

 

具體匯入方法:選中項目,右鍵-屬性-build path-libraries-add external jars,然後選擇包即可。

下載此包,可以到此網址上下載http://logging.apache.org/log4j/2.x/download.html,也可以在本文附件中下載。

至此,可以說,環境已經配置好了,

三、怎麼使用log4j?

在使用的類檔案中匯入用紅線標出來的包。

 

 

然後通過一條指令,獲得該logger對象:

Private static Logger logger = Logger.getLogger(類名.class));

然後你就可以在需要log的地方,列印輸出就行了,比如:

Logger.info(XXXXXXX);

Logger.debug(XXXXXXX);

接下來的問題就是怎麼能使資訊輸出到不同的地方呢?

這就是前面的Log4j.properties的作用了。

Log4j有三個組件:Loggers—記錄器,Appenders---輸出源,Layouts---布局

通俗點講就是日誌是什麼類別的,日誌要輸出到哪裡,日誌是什麼樣的形式。

Log4j.rootLogger = [level], appenderName,appenderName,…….

Level  為記錄的優先順序:OFF, FATAL, ERROR, WARN,INFO,DEBUG,ALL或者自訂。

Log4j建議只使用四個層級,從高到低分別為:ERROR, WARN, INFO, DEBUG.

比如定義了INFO層級,只有高於或者等於這個層級的才進行處理,而DEBUG層級的資訊將不被列印出來。OFF,關閉所有的日誌輸出。

appenderName 是指定日誌輸出到那個地方。

Log4j提供的appender有以下幾種:

org.apache.log4j.ConsoleAppender ---控制台

org.apache.log4j.FileAppender---檔案

org.apache.log4j.DailyRollingFileAppender----每天產生一個記錄檔

還有一些其他的方式,常用的大概就是以上三種。

例如:

Log4j.appender.stdout= org.apache.log4j.ConsoleAppender

就是將資訊輸出到控制台。

這裡給出我的一個樣本設定檔:

 

 

容易分析:

我要將DEBUG層級以下的資訊列印出來,不過就屬他層級最低。

A1負責指定到控制台,D負責指定到F://logs/log.log這個檔案中。
後面的那個Append=true代表追加,如果是false的話,再次運行程式的調試資訊會將其覆蓋。

結果

 

Java log4j的環境搭建

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.