[logback-user] Memory leaks if messages are not being posted with AsyncAppender

andrey.dayman andrey.dayman at gmail.com
Sun May 31 12:56:34 CEST 2015


We use async net.logstash.logback.appender.LogstashTcpSocketAppender.
It puts messages in buffer and sends them to Logstash occassionally.

So if there are connection issues it will accumulate messages, which is
But we discovered that messages are huge (33 Mbs each).
So we found all this data in
ch.qos.logback.classic.spi.LoggingEvent.argumentArray field.
We use Cassandra client called Hector, and if there is a connection issue it
logs error passing a connection client as an argument.
So GC cannot release this client because LoggingEvent has reference.
And at this moment we already have formattedMessage, so there is no need to
have argumentArray filled anymore as I understand.

So the question is: why argumentArray is not being cleared after formatting
the message?
Is it by design?
Please let me know if you know the answer!

Thanks in advance!


View this message in context: http://logback.10977.n7.nabble.com/Memory-leaks-if-messages-are-not-being-posted-with-AsyncAppender-tp14245.html
Sent from the Users mailing list archive at Nabble.com.

More information about the Logback-user mailing list