org.apache.log4j.Level類具有以下級別。
我們還可以通過對Level類進行子類化來定義我們的自定義級別。
級別 | 描述 |
---|---|
ALL | 所有級別包括自定義級別。 |
DEBUG | 調(diào)試消息日志。 |
ERROR | 錯誤消息日志,應用程序可以繼續(xù)運行。 |
FATAL | 嚴重錯誤消息日志,必須中止運行應用程序。 |
INFO | 信息消息。 |
OFF | 最高可能的排名,旨在關閉日志記錄。 |
TRACE | 高于DEBUG。 |
WARN | 用于警告消息。 |
在Log4j中,級別是有序的。
如果A>= Y,則在級別為Y的記錄器中啟用級別X的日志請求。
對于標準級別,我們有ALL <DEBUG<INFO<WARN<ERROR<FATAL<OFF。
以下示例顯示如何過濾所有DEBUG和INFO消息。
它使用logger方法 setLevel(Level.XXX)
設置所需的日志記錄級別。
以下代碼打印除Debug和Info之外的所有消息:
import org.apache.log4j.*; public class Main { private static org.apache.log4j.Logger log = Logger .getLogger(Main.class); public static void main(String[] args) { log.setLevel(Level.WARN); log.trace("Trace Message!"); log.debug("Debug Message!"); log.info("Info Message!"); log.warn("Warn Message!"); log.error("Error Message!"); log.fatal("Fatal Message!"); } }
當你編譯和運行LogClass程序時,它將產(chǎn)生以下結(jié)果:
Warn Message! Error Message! Fatal Message!
我們可以使用Log4j配置文件來控制日志級別設置,而不更改源代碼。
以下代碼顯示如何通過配置文件執(zhí)行l(wèi)og.setLevel(Level.WARN)。
# Define the root logger with appender file log = c:/log4j log4j.rootLogger = WARN, FILE # Define the file appender log4j.appender.FILE=org.apache.log4j.FileAppender log4j.appender.FILE.File=${log}/log.out # Define the layout for file appender log4j.appender.FILE.layout=org.apache.log4j.PatternLayout log4j.appender.FILE.layout.conversionPattern=%m%n
現(xiàn)在讓我們使用我們的下面的程序:
import org.apache.log4j.*; public class Main { private static org.apache.log4j.Logger log = Logger.getLogger(Main.class); public static void main(String[] args) { log.trace("Trace Message!"); log.debug("Debug Message!"); log.info("Info Message!"); log.warn("Warn Message!"); log.error("Error Message!"); log.fatal("Fatal Message!"); } }
更多建議: