首頁 >Java >java教程 >如何配置 Log4j 以將不同的日誌記錄等級傳送到單獨的附加程式和日誌檔案?

如何配置 Log4j 以將不同的日誌記錄等級傳送到單獨的附加程式和日誌檔案?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-10-29 17:29:02909瀏覽

How can I configure Log4j to send different logging levels to separate appenders and log files?

使用Log4j 記錄不同等級和內容

問題:

問題:

問題:

可以配置為將不同的日誌記錄等級定向到單獨的附加程式?目標是建立多個具有特定內容的日誌文件,例如一個主日誌捕獲所有 INFO 及以上訊息,而另一個日誌僅捕獲選定的一組類別的 DEBUG 訊息。

答案:
  1. 為多個日誌檔案配置Log4j
  2. Log4j 允許透過附加程式自訂記錄到多個目標。若要實現所需的設定:
  3. 定義多個 Appender: 首先為每個類型的日誌建立單獨的 Appender。為它們指派適當的檔案屬性以指定其日誌檔案目標。設定閾值來控制每個附加程式的日誌記錄等級(例如,主日誌的 INFO 和特定類別的 DEBUG)。

設定根記錄器: rootLogger 選項決定所有日誌記錄最初的位置傳送。配置它以將日誌傳送到您先前建立的附加程式。

log4j.rootLogger=QuietAppender, LoudAppender, TRACE
# setup main log
log4j.appender.QuietAppender=org.apache.log4j.RollingFileAppender
log4j.appender.QuietAppender.Threshold=INFO
log4j.appender.QuietAppender.File=quiet.log

# setup specific log
log4j.appender.LoudAppender=org.apache.log4j.RollingFileAppender
log4j.appender.LoudAppender.Threshold=DEBUG
log4j.appender.LoudAppender.File=loud.log

# set logging level for specific classes
log4j.logger.com.yourpackage.yourclazz=TRACE
設定記錄器等級:

使用 log4j.logger 屬性為不同的類別或套件設定特定的日誌記錄等級。這允許您選擇性地控制為每個類別記錄的詳細資訊等級。

範例配置:使用此配置,'quiet. log' 將包含所有類別的所有INFO 和上述訊息,而'loud .log' 將只包含指定類別'yourclazz' 的DEBUG 訊息。

以上是如何配置 Log4j 以將不同的日誌記錄等級傳送到單獨的附加程式和日誌檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn