[ 
https://issues.apache.org/jira/browse/LOG4J2-2312?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

David Knapp updated LOG4J2-2312:
--------------------------------
    Description: 
When using the async appender combined with the JsonLayout, you only get the 
results of the message being written to the appender.

 

I took a look at it seems like this is because RingBufferLogEvent implements 
ReusableMessage which is where jackson gets the MessageSerializer, whereas the 
non async LogEvent doesn't, so it gets the BeanSerializer

Attached are traces, both of which originating from the 
MessageSerializer.serialize method

  was:
When using the async appender combined with the JsonLayout, you only get the 
results of the message being written to the appender.

 

I took a look at it seems like this is because RingBufferLogEvent implements 
ReusableMessage which is where jackson gets the MessageSerializer, whereas the 
non async LogEvent doesn't, so it gets the BeanSerializer


> Using async appender with json layout causes only the message to be written
> ---------------------------------------------------------------------------
>
>                 Key: LOG4J2-2312
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-2312
>             Project: Log4j 2
>          Issue Type: Bug
>            Reporter: David Knapp
>            Priority: Major
>         Attachments: async_trace.txt, synchronous_trace.txt
>
>
> When using the async appender combined with the JsonLayout, you only get the 
> results of the message being written to the appender.
>  
> I took a look at it seems like this is because RingBufferLogEvent implements 
> ReusableMessage which is where jackson gets the MessageSerializer, whereas 
> the non async LogEvent doesn't, so it gets the BeanSerializer
> Attached are traces, both of which originating from the 
> MessageSerializer.serialize method



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to