David
To follow up: I examined the Logback source code in the repo.
Specifically, the class AsyncAppenderBase.
It appears as if this is a design issue. To get it to work the way
we want, Logback code would need to be refactored. Each appender is
assigned its own worker thread. The worker thread is started when
the appender is started. I guess the designers of logback hadn't
anticipated a scenario where many appenders would be used.
public void start() {
..
worker.setDaemon(true);
worker.setName("AsyncAppender-Worker-" + getName());
super.start();
worker.start();
}
Cheers
Jamie
On 2017/12/15 09:37, Jamie wrote:
David
Thanks for your consideration. You seem to imply this shouldn't
be happening. If so, that's great. The below initAppenders()
function is called on startup of the server. Perhaps the way the
appenders are being initialized and started is causing the behavior. Is there
an alternative?