Merge branch '1.2.x'
This commit is contained in:
commit
ea85e0d0b0
|
@ -125,13 +125,13 @@ public class Log4J2LoggingSystem extends Slf4JLoggingSystem {
|
|||
@Override
|
||||
public void beforeInitialize() {
|
||||
super.beforeInitialize();
|
||||
getLoggerConfig(null).addFilter(FILTER);
|
||||
getRootLoggerConfig().addFilter(FILTER);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void initialize(LoggingInitializationContext initializationContext,
|
||||
String configLocation, LogFile logFile) {
|
||||
getLoggerConfig(null).removeFilter(FILTER);
|
||||
getRootLoggerConfig().removeFilter(FILTER);
|
||||
super.initialize(initializationContext, configLocation, logFile);
|
||||
}
|
||||
|
||||
|
@ -183,15 +183,25 @@ public class Log4J2LoggingSystem extends Slf4JLoggingSystem {
|
|||
}
|
||||
|
||||
@Override
|
||||
public void setLogLevel(String loggerName, LogLevel level) {
|
||||
getLoggerConfig(loggerName).setLevel(LEVELS.get(level));
|
||||
public void setLogLevel(String loggerName, LogLevel logLevel) {
|
||||
Level level = LEVELS.get(logLevel);
|
||||
LoggerConfig loggerConfig = getLoggerConfig(loggerName);
|
||||
if (loggerConfig == null) {
|
||||
loggerConfig = new LoggerConfig(loggerName, level, true);
|
||||
getLoggerContext().getConfiguration().addLogger(loggerName, loggerConfig);
|
||||
}
|
||||
else {
|
||||
loggerConfig.setLevel(level);
|
||||
}
|
||||
getLoggerContext().updateLoggers();
|
||||
}
|
||||
|
||||
private LoggerConfig getRootLoggerConfig() {
|
||||
return getLoggerContext().getConfiguration().getLoggerConfig("");
|
||||
}
|
||||
|
||||
private LoggerConfig getLoggerConfig(String loggerName) {
|
||||
LoggerConfig loggerConfig = getLoggerContext().getConfiguration()
|
||||
.getLoggerConfig(loggerName == null ? "" : loggerName);
|
||||
return loggerConfig;
|
||||
return getLoggerContext().getConfiguration().getLoggers().get(loggerName);
|
||||
}
|
||||
|
||||
private LoggerContext getLoggerContext() {
|
||||
|
|
|
@ -36,12 +36,13 @@ import org.springframework.util.StringUtils;
|
|||
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
|
||||
import static org.hamcrest.CoreMatchers.containsString;
|
||||
import static org.hamcrest.Matchers.arrayContaining;
|
||||
import static org.hamcrest.Matchers.equalTo;
|
||||
import static org.hamcrest.Matchers.instanceOf;
|
||||
import static org.hamcrest.Matchers.is;
|
||||
import static org.hamcrest.Matchers.not;
|
||||
import static org.hamcrest.Matchers.notNullValue;
|
||||
import static org.hamcrest.core.StringContains.containsString;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertThat;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
@ -130,6 +131,17 @@ public class Log4J2LoggingSystemTests extends AbstractLoggingSystemTests {
|
|||
equalTo(1));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void setLevelOfUnconfiguredLoggerDoesNotAffectRootConfiguration()
|
||||
throws Exception {
|
||||
this.loggingSystem.beforeInitialize();
|
||||
this.loggingSystem.initialize(null, null, null);
|
||||
LogManager.getRootLogger().debug("Hello");
|
||||
this.loggingSystem.setLogLevel("foo.bar.baz", LogLevel.DEBUG);
|
||||
LogManager.getRootLogger().debug("Hello");
|
||||
assertThat(this.output.toString(), not(containsString("Hello")));
|
||||
}
|
||||
|
||||
@Test
|
||||
@Ignore("Fails on Bamboo")
|
||||
public void loggingThatUsesJulIsCaptured() {
|
||||
|
|
Loading…
Reference in New Issue