[ https://issues.apache.org/jira/browse/LOG4J2-219?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13641491#comment-13641491 ]
Ralph Goers commented on LOG4J2-219: ------------------------------------ That is a good question. 1. Obviously the warning isn't noisy enough. 2. The concern I have on changing the code is that you would need to add a root logger that either a) does nothing, which seems odd or b) writes to the console, which may confuse users even more since they won't know why that is happening. I guess I'm inclined to lean towards creating a root appender that writes to the console (essentially what is happening now) and then including the user's configuration, while emitting a warning and making sure the documentation is clear on this. At the same time it would be good to know what Log4j 1.x and Logback do in this case. Ralph > Named logger without root logger ends up with empty Appenders map - does not > log anything > ----------------------------------------------------------------------------------------- > > Key: LOG4J2-219 > URL: https://issues.apache.org/jira/browse/LOG4J2-219 > Project: Log4j 2 > Issue Type: Bug > Components: Core > Affects Versions: 2.0-beta5 > Reporter: Remko Popma > > On the log4j-user mailing list, Peter DePasquale gave this test case that > demonstrates the problem: > Note that the configuration has no root logger, but only contains a named > logger. > In a debugger I found that the LoggerConfig for "logtest.LogTest" ended up > with an empty "appenders" Map<String, AppenderControl<?>>. The appenderRefs > list did contain an AppenderRef object but in #callAppenders there are no > AppenderControl objects to call... > (Sorry, I have been unable to find out the underlying cause yet.) > <?xml version="1.0" encoding="UTF-8"?> > <configuration status="warn"> > <appenders> > <File name="tracelog" fileName="trace-log.txt" > immediateFlush="true" append="false"> > <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level > %logger{36} - %msg%n"/> > </File> > </appenders> > > <loggers> > <logger name="logtest.LogTest" level="trace"> > <appender-ref ref="tracelog"/> > </logger> > </loggers> > </configuration> > package logtest; > import org.apache.logging.log4j.LogManager; > import org.apache.logging.log4j.Logger; > import org.apache.logging.log4j.core.config.XMLConfigurationFactory; > public class LogTest { > public static void main(String[] args) { > > System.setProperty(XMLConfigurationFactory.CONFIGURATION_FILE_PROPERTY, > "log4j2-roottest.xml"); > Logger logger = LogManager.getLogger(LogTest.class); > logger.trace("This is a trace message"); > logger.info("This is an info message"); > logger.warn("This is a warning message"); > } > } -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: log4j-dev-unsubscr...@logging.apache.org For additional commands, e-mail: log4j-dev-h...@logging.apache.org