有没有办法在Log4j日志消息中显示用户数据?

时间:2016-08-22 13:12:05

标签: java logging log4j customization

我知道,问题看起来有点令人困惑。让我详细解释一下。

我想在Logger中每次都显示一些数据以及用户消息。

实施例。 log4j.appender.filer.layout.ConversionPattern= %-5p %d{yyyyddMM-HH:mm:ss} %m%n
控制台:WARN 20162208-18:34:35测试信息

这是我在Log4j.properties文件中设置的模式,它可以正常工作。

现在,当我想在此模式中添加一些用户数据时出现问题。此用户数据将是一些将从用户输入中获取的值。在用户数据之后,控制台应该看起来像这样: 控制台:WARN User_data 20162208-18:34:35测试信息

所以我的问题是,我们可以用logger模式设置/发送用户数据吗?

我已经看到一些用户正在扩展Appender类并覆盖append()方法的示例。但我正在寻找一些不同的方法。

1 个答案:

答案 0 :(得分:1)

要在记录器条目中动态放置上下文数据,请使用Log4j中的MDC功能。

以下是一个例子:

// JAVA CODE
org.apache.log4j.MDC.put("User_data", "this is my user data");

// Log4j Pattern
%X{User_data}