我使用log4j2,我想为所有消息添加前缀。此前缀传递给构造函数参数,它取决于类的实例。因此,我们处于对象级别(而不是类或线程)。
例如,我有一个类似于A
实例化的new A(152)
类,因此当我在此类上使用log.error("message")
时,152:
恰好在消息之前编写。对于new A(155)
,将改为显示155:
。
谢谢你的帮助
最佳答案
使用MDC实现这一目标
在构造函数中
MDC.put("prefix", yourvalue);
并在您的XML中像这样在模式中使用它
%X{prefix}