Can you summarize the following document?
        
  下表中定義的log4j 1的日誌級別和訊息,以嚴重性遞減排序。左欄列出了log4j的日誌級別定義,右列提供了每個日誌級別的簡要說明。

  有三種方法來配置log4j:通過.properties檔案,通過XML檔案,通過Java程式碼。通過上述任意方法,你可以定義log4j的三個主要元件:Logger、Appender和Layout。通過檔案配置log4j,具有無需修改應用即可開啟或關閉日誌的好處。例如,應用程式可以在日誌關閉的情況下執行,直到問題出現後,再日誌功能可以簡單地通過修改配置檔案重新開啟。  Logger(記錄器)是日誌的邏輯檔名。其使用已知的Java應用程式的名稱。每個記錄器當前以什麼日誌記錄級別(FATAL、ERROR等)記錄是獨立配置的。在log4j的早期版本中,這些被稱為類別(category)和優先順序(priority),但現在他們分別被稱為logger(記錄器)和level(級別)。  實際的輸出是通過Appender(輸出源)。有許多可用的Appender,比如FileAppender、ConsoleAppender、SocketAppender、SyslogAppender、NTEventLogAppender,甚至SMTPAppender。多個Appender可以被關聯到任何Logger上,所以可以到多個輸出檔案上記錄相同的資訊,例如同時到一個本地檔案和通過套接字監聽器到另一臺計算機上。  Appender使用Layout(佈局)格式化日誌條目。常用的格式化為“一次一行”式日誌檔案的佈局是PatternLayout,其使用一個模式字串,就像C/C++函式printf那樣。此外還有HTMLLayout和XMLLayout,使用HTML或XML格式的時候會更方便。  要除錯一個表現異常的配置檔案,使用Java VM引數codice_1通過標準輸出輸出Log4j自身的資訊。要獲知log4j.propeties的路徑,檢查codice_2或codice_3。  log4j還有一個隱含的“未配置”配置,即一個缺乏log4j的配置但使用了log4j的Java應用程式。這將把一個警告(該程式未配置log4j)列印到標準輸出,並提供log4j網站的URL,在那裡可以找到警告和配置的詳細資訊。除了列印此警告,未配置的log4j的應用程式不會列印INFO、DEBUG或TRACE級別的訊息,而且還可能不輸出更高階別的訊息。

  TTCC是log4j使用的訊息格式。TTCC是"Time Thread Category Component"(時間、執行緒、類別、元件)的縮寫。例如,採用以下模式(pattern):  模式轉換表為: 示例輸出 467 [main] INFO org.apache.log4j.examples.Sort - Exiting main method.

  Apache Log4j 2是Log4j 1的繼任者,2014年7月其GA版本(正式釋出版)釋出。該框架被從頭重寫,並從現有的日誌解決方案中獲得靈感(包括Log4j 1和JUL)。該版本與Log4j 1的主要差異是: Log4j 2的最被認可的特點之一是“非同步記錄器”的效能。Log4j 2利用了LMAX Disruptor。例如,在相同的環境下,Log4j 2可以寫每秒超過18,000,000條資訊,而其他框架(像Logback和Log4j 1)每秒只能寫< 2,000,000條訊息。  Log4j 2提供對SLF4J、Commons Logging、Apache Flume和Log4j 1的支援。
Apache Log4j是一個基於Java的日誌記錄工具。它是由Ceki Gülcü首創的,現在則是Apache軟體基金會的一個專案。 log4j是幾種Java日誌框架之一。