2013-03-25 68 views
1

我正在使用slf4j。我有很多像這樣的日誌語句;自動標記slf4j參數化變量?

LOG.debug("I like {} and {}", new Object[] { "foo", "bar" }); 

當這個日誌語句被執行時,我得到的日誌看起來像這樣;

I like foo and bar 

正如所料。不過,我希望日誌消息參數具有其他格式,以使日誌解析器更容易。一個所需的日誌消息,字面上看起來像這樣;

I like [foo] and [bar] 

很顯然,我可以更新文字日誌語句I like [{}] and [{}],但是這是一個很大的改變,使得日誌報表看unessessarily亂,是不是對未來非常靈活。

有人能提出一個更快的解決方案,同時還與SLF4J保持?我正在使用的實現是logback-classic來執行實際的lgoging。

謝謝!

+0

這是日誌值方法的參數? – 2013-03-26 00:49:45

回答

1

如果使用的logback,也許你可以構建一個定製的附加器/編碼器/佈局/轉換器。在Logback中,Appenders正在採用LoggingEvent,通常將其委託給編碼器,以便爲其構建消息的佈局委託。查看源代碼以查看哪個部分是您進行自定義處理的最佳位置。