Log4j 1.x is unsupported nowadays; you should migrate to Log4j 2.x. If you're unable to migrate, then your best bet is to try to use an AsyncAppender, though those are also vastly improved in Log4j 2.x (along with far less synchronized blocks to cause problems).
More info: <https://logging.apache.org/log4j/2.x/performance.html> On 7 November 2017 at 11:42, Andrei Shakirin <[email protected]> wrote: > 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) > > > > The issue is discussed in log4j bugzilla: https://bz.apache. > org/bugzilla/show_bug.cgi?id=50213, basically it is related to > synchronized doAppend() method in AppenderSkeleton class. > 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. > > -- > -- > ------------------ > OPS4J - http://www.ops4j.org - [email protected] > > --- > You received this message because you are subscribed to the Google Groups > "OPS4J" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. > -- Matt Sicker <[email protected]> -- -- ------------------ OPS4J - http://www.ops4j.org - [email protected] --- You received this message because you are subscribed to the Google Groups "OPS4J" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
