Log4j使用

以下內(nèi)容適用于 log4j 2 之前的版本

常用附加器

附加器 備注
org.apache.log4j.ConsoleAppender 輸出到控制臺
org.apache.log4j.FileAppender 輸出到文件
org.apache.log4j.RollingFileAppender 當日志文件到達指定大小時產(chǎn)生一個新的日志文件
org.apache.log4j.DailyRollingFileAppender 每天產(chǎn)生一個新的日志文件

日志級別

以下日志等級輸出范圍從大到小排列

等級 備注
ALL 輸出全部等級的日志
TRACE 輸出追蹤信息
DEBUG 輸出調(diào)試信息
INFO 輸出提示信息
WARM 輸出警告信息
ERROR 輸出錯誤信息
FATAL 輸出致命信息
OFF 關(guān)閉所有日志輸出

日志格式

格式 備注
%m 日志信息
%p 日志等級,優(yōu)先級
%r 應用啟動到日志輸出的時間(毫秒)
%c 日志所屬的類,一般是所在類的全限定名
%t 輸出日志的線程名
%n 輸出回車換行符
%d 輸出時間日期默認格式ISO8601,也可以自定義格式,例如:%d{yyyy-MM-dd HH:mm:ss}
%l 日志輸出的位置,類名,在代碼中的行數(shù)

log4j.properties 配置文件

基本格式

log4j.rootLogger=[日志等級], [自定義附加器名]...
log4j.appender.自定義附加器名=[附加器]
log4j.appender.自定義附加器名.layout= 格式化輸出日志Layout,常用org.apache.log4j.PatternLayout
log4j.appender.自定義附加器名.layout.ConversionPattern=輸出格式,例如:%d %p [%c] - %m%n 

例如:

log4j.rootLogger = DEBUG, stdout
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = [%p] %d{yyyy-MM-dd HH:mm:ss} - %m%n

實例

Test.java

import org.apache.log4j.Logger;

public class Test {
    private static final Logger log = Logger.getLogger(Test.class);

    public static void main(String[] args) {
        log.info("log info");
        log.error("log error");
        log.trace("log trace");
        log.warn("log warn");
        log.debug("log debug");
        log.fatal("log fatal");
    }
}

log4j.properties

log4j.rootLogger = DEBUG, stdout
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern = [%p] %d{yyyy-MM-dd HH:mm:ss} - %m%n

輸出

[INFO] 2020-01-25 21:39:29 - log info
[ERROR] 2020-01-25 21:39:29 - log error
[WARN] 2020-01-25 21:39:29 - log warn
[DEBUG] 2020-01-25 21:39:29 - log debug
[FATAL] 2020-01-25 21:39:29 - log fatal
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 在應用程序中添加日志記錄總的來說基于三個目的:監(jiān)視代碼中變量的變化情況,周期性的記錄到文件中供其他應用進行統(tǒng)計分析...
    時待吾閱讀 5,159評論 0 6
  • 在應用程序中添加日志記錄總的來說基于三個目的:監(jiān)視代碼中變量的變化情況,周期性的記錄到文件中供其他應用進行統(tǒng)計分析...
    時待吾閱讀 5,222評論 1 13
  • 原文地址:http://www.codeceo.com/article/log4j-usage.html 日志是應...
    程序熊大閱讀 69,039評論 10 187
  • 日志是應用軟件中不可缺少的部分,Apache的開源項目log4j是一個功能強大的日志組件,提供方便的日志記錄。在a...
    丸_子閱讀 7,453評論 4 17
  • 本內(nèi)容轉(zhuǎn)載自該網(wǎng)站([林炳文Evankaka]原創(chuàng)作品。轉(zhuǎn)載請注明出處http://blog.csdn.net/e...
    BETWEENAND閱讀 1,093評論 0 0

友情鏈接更多精彩內(nèi)容