log4j 异步日志问题分析

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了log4j 异步日志问题分析相关的知识,希望对你有一定的参考价值。

1. 常用的DailyRollingFileAppender与RollingFileAppender是否同步?

1.1 代码分析

2. log4j 1.2.x提供了异步appender是什么?AsyncAppender

2.1 AsyncAppender配置

2.2 AsyncAppender分析

3. log4j 2.x 异步日志问题的解决方案及分析

3.1 log4j 2.x 异步日志问题的解决方案

3.2 log4j 2.x 异步日志性能高的关键

1. 常用的DailyRollingFileAppender与RollingFileAppender是否同步?

1.1 代码分析

DailyRollingFileAppender
RollingFileAppender
  WriterAppender.append(LoggingEvent event)
    QuietWriter.write(String string)

分析代码来看,最终依靠QuietWriter的write方法,这个方法是同步的。

技术分享

那么非常清晰的说明了这两个appender不是异步的。

2. log4j 1.2.x提供了异步appender是什么?AsyncAppender

2.1 AsyncAppender配置

官方解释,AsyncAppender必须使用xml形式的配置

Important note: The AsyncAppender can only be script configured using the DOMConfigurator.

配置示例

2.2 AsyncAppender分析

 

3. log4j 2.x 异步日志问题的解决方案及分析

3.1 log4j 2.x 异步日志问题的解决方案

3.2 log4j 2.x 异步日志性能高的关键

以上是关于log4j 异步日志问题分析的主要内容,如果未能解决你的问题,请参考以下文章

log4j2 异步日志原理及配置

多进程log4j日志混乱问题分析

以编程方式创建 log4j 异步记录器

log4j:ERROR 发送日志事件到日志分析的错误。

20210522 SL4J+LOG4J2日志框架

分析 Log4j 生成的日志文件