Schubert Fernandes created LOG4J2-3082:
------------------------------------------

             Summary: When using JsonTemplateLayout is there a way to output 
composite objects as JSON?
                 Key: LOG4J2-3082
                 URL: https://issues.apache.org/jira/browse/LOG4J2-3082
             Project: Log4j 2
          Issue Type: Question
          Components: JsonTemplateLayout
    Affects Versions: 2.14.1
            Reporter: Schubert Fernandes
         Attachments: log4j.json.event.layout.zip

When using JsonTemplateLayout is there a way to output composite objects as 
JSON?
It looks like any composite objects are output as simple strings with the value 
generated by the .toString() method of the Java object.
Is there an option to output JSON instead, possibly using 
_org.apache.logging.log4j.core.jackson.Log4jJsonObjectMapper_ ?

It is currently possible to do this by converting the object into a 
java.util.Map before supplying it to the logging framework but it would be nice 
if the logging framework did this out of the box if an option is turned on as 
it is not always possible to do this (e.g. with objects on the MDC/NDC).

This should apply to composite objects logged from...
# The thread context map (MDC).
# The thread context stack (NDC).
# Message parameters
# anywhere else that I may have missed.

See the differences between the two log messages generated in the attached 
project.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to