[ 
https://issues.apache.org/jira/browse/LOG4J2-2899?focusedWorklogId=462268&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-462268
 ]

ASF GitHub Bot logged work on LOG4J2-2899:
------------------------------------------

                Author: ASF GitHub Bot
            Created on: 22/Jul/20 21:34
            Start Date: 22/Jul/20 21:34
    Worklog Time Spent: 10m 
      Work Description: rgoers commented on pull request #390:
URL: https://github.com/apache/logging-log4j2/pull/390#issuecomment-662709377


   Of course it can be guaranteed the original thread is around because most of 
the time the LogEventWrapper is called it will be from the same thread as the 
caller. Only when the caller has an AsyncAppender will that change and in that 
case Log4j’s AsyncAppender will have captured all the LogEvent info. To be 
honest, I think that code should just be calling event.getThreadName(), 
event.getThreadId() and event.getThreadPriority(). 


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Issue Time Tracking
-------------------

    Worklog Id:     (was: 462268)
    Time Spent: 1h  (was: 50m)

> LogEventWrapper.getThread only works on the first invocation
> ------------------------------------------------------------
>
>                 Key: LOG4J2-2899
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-2899
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: log4j 1.2 emulation
>    Affects Versions: 2.13.3
>            Reporter: Carter Kozak
>            Assignee: Carter Kozak
>            Priority: Major
>          Time Spent: 1h
>  Remaining Estimate: 0h
>
> LogEventWrapper.getThread attempts to memoize the thread value but returns 
> null if the thread field is already set where it should return the field 
> value.
>  
> Additionally the thread is discovered using Thread.getAllStackTraces which is 
> an expensive operation. In most cases it should be sufficient to check only 
> the current thread, if the getThread method is called from another thread 
> there's no guarantee that the original thread still uses the same name, or 
> that it still exists.



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

Reply via email to