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

Ralph Goers edited comment on LOG4J2-3440 at 3/25/22, 5:43 PM:
---------------------------------------------------------------

I'm not really sure how your test succeeds. When you reference LogManager it 
has a static block that will initialize Log4j. By default, it will configure 
the DefaultConfiguration, which has a root LoggerConfig at ERROR and a Console 
Appender. See [setDefault() in 
AbstractConfiguration|https://github.com/apache/logging-log4j2/blob/release-2.x/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java#L723].

Log4j-spring-boot tests to see if Log4j has initialized by calling 
LogManagerStatus.isInitialized(). Unfortunately, that class is considered 
internal. The isInitialized doesn't need to be - we only want to protect the 
setter.I'll have to figure out how to split things so that can happen.


was (Author: ralph.go...@dslextreme.com):
I'm not really sure how your test succeeds. When you reference LogManager it 
has a static block that will initialize Log4j. By default, it will configure 
the DefaultConfiguration, which has a root LoggerConfig at ERROR and a Console 
Appender. See [setDefault() in 
AbstractConfiguration|https://github.com/apache/logging-log4j2/blob/release-2.x/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java#L723].

> Log4j 1.2 bridge getAllAppenders() returns null enumeration
> -----------------------------------------------------------
>
>                 Key: LOG4J2-3440
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-3440
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Log4j 1.2 bridge
>    Affects Versions: 2.17.2
>            Reporter: Pablo Rogina
>            Assignee: Piotr Karwasz
>            Priority: Major
>             Fix For: 2.17.3
>
>
> Old application using Log4j 1.2.x relies on Logger.getAllAppenders() to 
> decide if Log4j it's already configured (returned Enumeration has at least 1 
> appender) or not (empty returned Enumeration).
> Some recent code audits mandate to remove log4j v1 component(s) and to 
> upgrade to latest 2.17.2 release, so we're using Log4j 1.2 Bridge to comply 
> and not to change application code.
> However, we're facing the issue describe here [1] for 
> Logger.getRootLogger().getAllAppenders() although with latest Log4j release 
> 2.17.2 the issue seems to be that data structure aai is never updated with 
> the proper configured appenders, given that now most of the work happens in 
> the Log4j v2 Core implementation, thus using LoggerContext
> [1] [java - Log4j getAllAppenders() returns null enumeration - Stack 
> Overflow|https://stackoverflow.com/questions/32864929/log4j-getallappenders-returns-null-enumeration]
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to