[ 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)