我想在使用 log4j 生成的日志文件的每个条目的时间戳中添加微秒,这可能吗?
我查过官方文档,但没有提到毫秒以下的单位。
现在我有一个如下所示的转换模式:
%d{dd/MM/yyyy HH\:mm\:ss,SSS} %-5p [%t] - %m%n
在日期转换模式中(%d)我想添加微秒毫秒值之后(SSS),有办法做到吗?
从...开始Java 9 and log4j 2.11.0,即使是纳秒级的时间戳也是可能的。
以下是特殊的预定义模式,允许获取日期时间或微秒或纳秒的时间:
- 图案:
%d{ABSOLUTE_MICROS}
输出示例:14:34:02,123456
- 图案:
%d{ABSOLUTE_NANOS}
输出示例:14:34:02,123456789
- 图案:
%d{DEFAULT_MICROS}
输出示例:2012-11-02 14:34:02,123456
- 图案:
%d{DEFAULT_NANOS}
输出示例:2012-11-02 14:34:02,123456789
如果您需要更具体的模式,请使用“纳秒级“ 模式字母n
而不是“几分之一秒“ 模式字母S
例如%d{dd MMM yyyy HH:mm:ss,nnnn} to %d{dd MMM yyyy HH:mm:ss,nnnnnnnnn}
会给02 Nov 2012 14:34:02,1234 to 02 Nov 2012 14:34:02,123456789
.
在你的情况下,由于你需要毫秒和微秒,你的模式可能是这样的%d{dd/MM/yyyy HH:mm:ss,nnnnnn}
Log4j 2.11 添加了对比之前更精确的时间戳的有限支持
在 Java 9 上运行时为毫秒。
欲了解更多详情,请参阅https://logging.apache.org/log4j/2.x/manual/layouts.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)