log4j - 日誌格式化



Apache log4j 提供了各種Layout物件,每個物件都可以根據不同的佈局格式化日誌資料。也可以建立以應用程式特定方式格式化日誌資料的 Layout 物件。

所有 Layout 物件都從Appender物件接收LoggingEvent物件。然後,Layout 物件從 LoggingEvent 中檢索訊息引數,並應用相應的 ObjectRenderer 獲取訊息的字串表示形式。

Layout 型別

層次結構中的頂級類是抽象類org.apache.log4j.Layout。這是 log4j API 中所有其他 Layout 類的基類。

Layout 類在應用程式中被定義為抽象類,我們永遠不會直接使用此類;相反,我們使用其子類,如下所示

Layout 方法

此類提供了所有其他 Layout 物件中所有常見操作的骨架實現,並聲明瞭兩個抽象方法。

序號 方法及描述
1 public abstract boolean ignoresThrowable()

它指示日誌資訊是否處理作為日誌事件的一部分傳遞給它的任何 java.lang.Throwable 物件。如果 Layout 物件處理 Throwable 物件,則 Layout 物件不會忽略它,並返回 false。

2 public abstract String format(LoggingEvent event)

各個 Layout 子類實現此方法以進行特定於佈局的格式化。

除了這些抽象方法之外,Layout 類還為以下列出的方法提供了具體實現

序號 方法及描述
1 public String getContentType()

它返回 Layout 物件使用的內容型別。基類返回 text/plain 作為預設內容型別。

2 public String getFooter()

它指定日誌訊息的頁尾資訊。

3 public String getHeader()

它指定日誌訊息的頁首資訊。

每個子類都可以透過覆蓋這些方法的具體實現來返回特定於類的資訊。

廣告

© . All rights reserved.