[
https://issues.apache.org/jira/browse/LOG4J2-1010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14581618#comment-14581618
]
Mikael Ståldal commented on LOG4J2-1010:
----------------------------------------
I am developing a Scala wrapper around Log4j 2 (similar to [Typesafe's
Scala-logging|https://github.com/typesafehub/scala-logging/] but using Log4j 2
directly), which handles context in a different way than ThreadContext. It uses
the methods in ExtendedLogger to do the actual logging.
Currently I have to use a workaround like this:
{code}
try {
ThreadContext.put(key1, value1);
ThreadContext.put(key2, value2);
delegateLogger.logIfEnabled(FQCN, level, marker, message, cause);
} finally {
ThreadContext.remove(key1);
ThreadContext.remove(key2);
}
{code}
I would like to be able to do this instead:
{code}
delegateLogger.logIfEnabled(FQCN, level, marker, message, cause, contextMap);
{code}
How am I supposed to pass in the context map in the Message object?
> Possibility to set ThreadContext values in calls to Logger method
> -----------------------------------------------------------------
>
> Key: LOG4J2-1010
> URL: https://issues.apache.org/jira/browse/LOG4J2-1010
> Project: Log4j 2
> Issue Type: Improvement
> Components: API
> Affects Versions: 2.2
> Reporter: Mikael Ståldal
>
> It would be useful to have some logging methods in the Logger interface to
> set ThreadContext values for a single log message only.
> In an asynchronous environment, using ThreadContext as currently defined is
> not so useful since JVM threads might not be coupled to the logical flow of
> the application.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]