[logback-user] getting logback to scale on multitenant app

Jamie jamie at stimulussoft.com
Thu Dec 14 22:28:16 CET 2017


Hi

I'd appreciate guidance on  how to get Logback to use less resources in 
our multitenant app. It seems every time we add a new tenant, log back 
creates a few more async appender threads. This affects the scalability 
of our software. In our app, each tenant has an audit and a debug log. 
Async apppender is being used to write to each log respectively. Our 
problem is that whenever a new tenant is added, many more threads get 
created. it seems a new  worker thread is assigned to each appender.  Is 
there a way to get Logback to rather use a shared thread pool?

Stacks at 2017-12-14 10:33:57 PM (uptime 22m 24s)

AsyncAppender-Worker-audit-template [WAITING] [DAEMON]
sun.misc.Unsafe.park(boolean, long) Unsafe.java (native)
java.util.concurrent.locks.LockSupport.park(Object) LockSupport.java:175
java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await() 
AbstractQueuedSynchronizer.java:2039
java.util.concurrent.ArrayBlockingQueue.take() ArrayBlockingQueue.java:403
ch.qos.logback.core.AsyncAppenderBase$Worker.run() 
AsyncAppenderBase.java:289

Thanks in advance

Jamie





More information about the logback-user mailing list