[
https://issues.apache.org/jira/browse/LOG4J2-1927?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ralph Goers resolved LOG4J2-1927.
---------------------------------
Resolution: Invalid
> Using Configurator.setLevel() results in a default LoggerConfig
> ---------------------------------------------------------------
>
> Key: LOG4J2-1927
> URL: https://issues.apache.org/jira/browse/LOG4J2-1927
> Project: Log4j 2
> Issue Type: Improvement
> Components: Configurators
> Affects Versions: 2.8.2
> Reporter: Thorkild Gregersen
> Priority: Minor
>
> Using Configurator.setLevel(String, Level) to change log level of a logger
> results in a new LoggerConfig if non exists before.
> This appear to result in a config with out an Appender.
> Is this desired behavior and what are the side effects of this?
> Could a solution be to inherit the Appender or AppenderRefs from the parent
> logger/config?
> Code in question from org.apache.logging.log4j.core.config.Configurator
> {code}
> private static boolean setLevel(final String loggerName, final Level level,
> final Configuration config) {
> boolean set;
> LoggerConfig loggerConfig = config.getLoggerConfig(loggerName);
> if (!loggerName.equals(loggerConfig.getName())) {
> // TODO Should additivity be inherited?
> loggerConfig = new LoggerConfig(loggerName, level, true);
> config.addLogger(loggerName, loggerConfig);
> loggerConfig.setLevel(level);
> set = true;
> } else {
> set = setLevel(loggerConfig, level);
> }
> return set;
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)