Edward Sargisson created LOG4J2-268:
---------------------------------------
Summary: Berkeley (persistent) agent for FlumeAppender only works
with MapMessages (and thus not slf4j)
Key: LOG4J2-268
URL: https://issues.apache.org/jira/browse/LOG4J2-268
Project: Log4j 2
Issue Type: Bug
Components: Flume Appender
Reporter: Edward Sargisson
If I try and use the persistent FlumeAppender with slf4j then I get a
NullPointerException in FlumePersistentManager.send because there is no GUID
header.
(My repro here was using a copy of Flume modified to use log4j2 - while this
particular repro is exotic I'm confident that the general case detailed above
will be very common).
There is no GUID header because the FlumeEvent constructor only creates one if
the message is a MapMessage.
If the user is using slf4j then all messages are PersistentMessages - and thus
will cause this logging to fail.
The GUID is required because it's used as a key in the BerkeleyDB storage.
My attempts at a simple fix ran afoul of the key lookup from the headers in
FlumePersisentManager.WriterThread.run().
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]