log4j2是否可能打印用户提供的时间戳而不是系统时间?

时间:2014-06-03 21:39:43

标签: log4j2

我编写了一个使用记录数据和时间戳的应用程序。为此,我有一个对象,负责知道当前时间(过去,但仍然是单调的)。

我希望配置log4j2,这样打印的时间戳将来自此对象,而不是来自计算机的计时器。可能吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

是的,这是可能的。 您可以指定系统属性" log4j.Clock"使用实现org.apache.logging.log4j.core.helpers.Clock接口的类的完全限定类名。

请参阅此处的文档:http://logging.apache.org/log4j/2.x/manual/async.html#AllAsync

从版本RC1开始,这仅适用于异步记录器,但在下一版本中,这适用于所有配置。请注意,在下一版本中,core.helpers包已移至core.util。

有关详细信息,另请参阅https://issues.apache.org/jira/browse/LOG4J2-628