log4j : 当前时间(以毫秒为单位)

2022-09-02 14:25:26

在我可以设置例如log4j.propertiesPatternLayout("[%p] %c - %m - %d %n")

是否有任何符号(%something)以毫秒为单位返回当前时间?


答案 1

你可以试试这个。

log4j.appender.appender_name.layout=org.apache.log4j.PatternLayout
log4j.appender.appender_name.layout.ConversionPattern=%d %p [%c] - %m%n

日期参数 。例如:。%d%d{HH:mm:ss,SSS}

http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PatternLayout.html


答案 2

没有Log4J符号可以完全按照您的要求。

%d返回具有给定模式的当前日期,该模式由 a(您放在括号之间的模式)定义,但不以 millis 为单位为您提供时间。SimpleDateFormat

%r给出自执行开始以来的毫秒数。

实现您想要的一种可能方法是扩展Log4j的行为,它要复杂得多,但是如果绝对必要...给你:

自定义log4j(编辑:不再在线?
自定义log4j(编辑:2018替代)

编辑:请记住,从您的评论中,如果您需要找出不同机器中执行之间的时间差,则必须确保机器的时钟是同步的,否则会导致您得出错误的结论。


推荐