存在显着 IO 延迟时的 logger 语句时间戳

问题描述

我们知道,在任何 Java 日志记录框架中,我们都会获取 logger 语句的时间戳,并打印在语句前面的日志文件中。我想了解导出和记录的时间,时间是-写入日志文件的日志语句,还是JVM中执行日志语句的时间。如果 IO 有任何延迟,那么我们可以看到这些时间戳之间的差异。 Log4j/Slf4j 中是否有任何可用的配置来设置它?

解决方法

当您调用 Logger 日志方法之一时,会创建一个 LoggingEvent。根据 source codeLoggingEvent 的时间戳是在创建事件时设置的。该时间戳是出现在格式化日志消息中的内容。

日志后端中的 I/O 延迟不应影响时间戳。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...