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

Volkan Yazici resolved LOG4J2-3009.
-----------------------------------
    Resolution: Fixed

> Change of java Thread name is not reflecting in log4j2 logs (pattern %t)
> ------------------------------------------------------------------------
>
>                 Key: LOG4J2-3009
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-3009
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Core, Pattern Converters
>    Affects Versions: 2.8.2
>            Reporter: Rohan Ramchander
>            Priority: Major
>   Original Estimate: 336h
>  Remaining Estimate: 336h
>
> I have Java based application with a single thread connected to JBOSS MQ. 
> Whenever there is a message in the queue then it pulls the message and sets 
> the thread name with one of the message's attribute (REQUEST_ID) and 
> continues processing. After application startup, the logging is fine for the 
> first message. But from the second message, the change in the thread name is 
> not reflecting in the logs.
> h2. Example code
> {code:java}
> private static Logger logger = 
> LogManager.getLogger(EngineManager.class.getName());
> private synchronized void onMessage(javax.jms.Message msg) {
>     Thread.currentThread().setName(msg.getStringProperty("REQUEST_ID"));
>     logger.info("Received a Message Event: Time spent:" + 
> (System.currentTimeMillis()-msg.getJMSTimestamp()) + "ms");
>     // ...
> }
> {code}
> h2. Configuration
> {code:java}
> appender.console.layout.pattern = %d\{ABSOLUTE} %c{1} [%t] - %m%n
> {code}
> h2. Output
> {code:java}
> 19:29:52,726 EngineManager [sddsdsdgdd-dfvdddbfvs-2343412] - Received a 
> Message Event: Time spent: 44ms
> {code}
>  
> Rest everything is fine that's why I have given small portion of the code. 
> What I need is when there is a second message (so on) in the queue then above 
> REQUEST_ID should change in the logs. It is always same for all the messages. 
> I tried different ways like {{LoggerContext.reconfigure()}}, 
> {{LogManager.shutdown()}} and then {{getLogger()}} etc but couldn't succeed.
> This used to work fine with log4j 1x where the change in the thread name 
> immediately reflects in the logs.



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

Reply via email to