Hi,
I have experienced that under high load logj4 appender (packed into pax-logging-service.jar) blocks threads and essentially reduces the throughput (in my case about 15%).
The stack trace from thread dump:
"qtp52584153-10776" - Thread t@10776
java.lang.Thread.State: BLOCKED
at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:231)
- waiting to lock <6a484498> (a org.apache.log4j.DailyRollingFileAppender) owned by "ArticlePAAThread" t@10014
at org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:59)
at org.apache.log4j.Category.callAppenders(Category.java:179)
at org.apache.log4j.Category.forcedLog(Category.java:333)
at org.apache.log4j.Category.log(Category.java:724)
at org.ops4j.pax.logging.service.internal.PaxLoggerImpl.inform(PaxLoggerImpl.java:167)
at org.ops4j.pax.logging.internal.TrackingLogger.inform(TrackingLogger.java:86)
at org.ops4j.pax.logging.slf4j.Slf4jLogger.info(Slf4jLogger.java:534)
at xxx.LoggingServiceExecutionTimeHandler.filter(LoggingServiceExecutionTimeHandler.java:52)
As far as I see the problem still appears in latest ops4j pax logging version (1.10.1).
Any suggestion how to fix or workaround this problem?
Regards,
Andrei.