Details
Description
Was hoping to move our numerous J2EE projects from Log4j to Log4j2 for the performance improvements. I put together a small test case that writes a string pattern to a Rolling File. There is a 6 digit sequence number at the start of the log message. This allows me to quickly see if all the log requests are making it into the log file. I attach the test case and log4j2.xml. The log4j2.xml uses an asynchronous appender.
What I observe in the output log file is that after a short interval (120 or so entries) the logged are appearing in the wrong order, and entries can be missing. The missing entries issues especially shows up when rolling to the next log file.
Perhaps there is a deliberate decision to not to guarantee log file accurately for speed. However we need the logs to accurately reflect what the application is logging. I have also noticed the performance is 25% worse in Log4j2 than Log4j when not using the asynchronous appender. So that rather kills us using Log4j2 at the moment.
Attachments
Attachments
Issue Links
- is broken by
-
LOG4J2-1518 Deadlock when using pure async and toString logs another message
- Closed
- is related to
-
LOG4J2-2095 org.apache.logging.log4j.core.async.EventRoute not Support Extend
- Open
-
LOG4J2-2048 Increase default queue size for AsyncAppender
- Closed
- relates to
-
LOG4J2-471 toString methods that perform logging can deadlock AsyncLogger
- Closed