[ 
https://issues.apache.org/jira/browse/LOG4J2-3083?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17334487#comment-17334487
 ] 

Ralph Goers commented on LOG4J2-3083:
-------------------------------------

StackLocatorUtil.getCallerClass() walks the stack until it finds the FQCN. It 
then skips any stack entries that match the FQCN. It then stops when it has a 
stack element that matches the package. That seems wrong. It should be looking 
for the first class that doesn't match the package to find the caller.  I will 
need to create a unit test to verify this is a bug.

> Why the logger get by Slf4j LoggerFactory.getILoggerFactory() can only use 
> current LoggerContext
> ------------------------------------------------------------------------------------------------
>
>                 Key: LOG4J2-3083
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-3083
>             Project: Log4j 2
>          Issue Type: Question
>    Affects Versions: 2.13.3
>         Environment: Spring Boot 2.4.5
> Slf4j
>            Reporter: wanghao
>            Priority: Major
>              Labels: newbie
>
> In SpringBoot project with +test+ profile,
> org.slf4j.LoggerFactory.getLogger("xxx") can get test profile LoggerContext 
> and read configuration from log4j2-test.xml.
> But
> org.slf4j.LoggerFactory.getILoggerFactory().getLogger("xxx") can only get 
> current LoggerContext and read configuration from log4j2.xml.
>  
> Is it designed like this? Why?



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

Reply via email to