log4j 中的时间戳问题
Timestamp issue in log4j
我们在使用 log4j 的日志中看到的实际时间是多少。是我们写一些消息的事件时间吗?或者是将消息写入磁盘日志的时间。考虑到系统上有一些负载。
我的回答仅对 log4j 1.2 有效。
日志包含调用 logger.log(..)
的时间,而不是将消息写入磁盘的时间。
为了更好地理解,请查看 log4j 的源代码。所有 logger.log(..)
方法都会创建一个新的 LogRecord
实例。 LogRecord
的构造函数检索时间戳,稍后用于将时间戳写入磁盘。
我们在使用 log4j 的日志中看到的实际时间是多少。是我们写一些消息的事件时间吗?或者是将消息写入磁盘日志的时间。考虑到系统上有一些负载。
我的回答仅对 log4j 1.2 有效。
日志包含调用 logger.log(..)
的时间,而不是将消息写入磁盘的时间。
为了更好地理解,请查看 log4j 的源代码。所有 logger.log(..)
方法都会创建一个新的 LogRecord
实例。 LogRecord
的构造函数检索时间戳,稍后用于将时间戳写入磁盘。