如何在使用Log4j或类似的日志记录中包含静态信息?

时间:2011-08-08 08:23:55

标签: java logging log4j slf4j

我们有一个应用程序,其中没有运行它的上下文(即数据库)的日志消息几乎没有意义。信息始终可用,但手动将其包含在各处都非常麻烦。有更优雅的方式吗?

我正在考虑实现一个包含日志信息的包装器。我试过了,但我希望LogFactory(slf4j或Log4j)默认选择这个类,我不知道该怎么做......

有什么建议吗?

2 个答案:

答案 0 :(得分:2)

您可以查看NDCMDC classes。您可以在堆栈上推送上下文信息,并将其自动包含在您的日志消息中。

您可以找到一个小示例here

PatternLayout中,使用'%x'记录NDC信息,'%X'使用MDC

答案 1 :(得分:0)

对于log4j,创建一个从PatternLayout扩展的类来创建自己的布局。