2015-05-06 67 views
1

我有一個簡單的日誌樣本。log4j日誌中的額外信息

Log4jExample:

package com.mobin.pack1; 
import java.io.IOException; 
import java.sql.SQLException; 
import org.apache.log4j.Logger; 
import org.apache.log4j.MDC; 

public class Log4jExample { 
    /* Get actual class name to be printed on */ 
    static Logger log = Logger.getLogger(Log4jExample.class); 

    public static void main(String[] args) throws IOException, SQLException { 

    MDC.put("user", "1");  
    log.info("Info"); 
    } 
} 

log4j.properties:

# Root logger option 
log4j.rootLogger=INFO, stdout 

# Direct log messages to stdout 
log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.Target=System.out 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.ConversionPattern=%x{user} - %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n 

當我運行它,這是印在控制檯:

{user} - 2015-05-06 12:25:31 INFO Log4jExample:17 - Info 

,但我想打印出 「1」而不是「{user}」。

什麼是問題?

回答

3

我覺得你剛剛得到的情況下錯誤 - 嘗試大寫X:%X{user}

+0

@hossein嘿,如果這回答了你的問題,你能不能接受它(給複選標記)? – traveh