I have Async appender with bufferSize="512"
.
In some situations I need to forcibly flush the buffer. How can I do that?
I don't what to close the LogManager, so LogManager.shutdown();
is not an option.
Please help!
Update: Here is the part of my log4j2.xml:
<Kafka name="Kafka" topic="logs-gexd-default">
<PatternLayout>
<pattern>%d{yyyy-MM-dd HH:mm:ss} %-5p %C{1}:%L - %m%n</pattern>
</PatternLayout>
<Property name="bootstrap.servers">${kafkaAddress}</Property>
</Kafka>
<Async name="AsyncKafka" bufferSize="512" blocking="false">
<AppenderRef ref="Kafka"/>
</Async>
I have a Kafka appender inside of Async appender. Unfortunately neither Kafka appender not Async appender has immediateFlush field.