From a89139c06b34c4ff893528ac1d96eb7e818c4c42 Mon Sep 17 00:00:00 2001 From: Phillip Webb Date: Tue, 30 Jun 2015 13:49:45 -0700 Subject: [PATCH] Allow case insensitive logging.level properties Fixes gh-3356 --- .../boot/logging/LoggingApplicationListener.java | 2 +- .../logging/LoggingApplicationListenerTests.java | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/spring-boot/src/main/java/org/springframework/boot/logging/LoggingApplicationListener.java b/spring-boot/src/main/java/org/springframework/boot/logging/LoggingApplicationListener.java index f62a040a49..6c7bfa4464 100644 --- a/spring-boot/src/main/java/org/springframework/boot/logging/LoggingApplicationListener.java +++ b/spring-boot/src/main/java/org/springframework/boot/logging/LoggingApplicationListener.java @@ -246,7 +246,7 @@ public class LoggingApplicationListener implements SmartApplicationListener { name = null; } level = environment.resolvePlaceholders(level); - system.setLogLevel(name, LogLevel.valueOf(level)); + system.setLogLevel(name, LogLevel.valueOf(level.toUpperCase())); } catch (RuntimeException ex) { this.logger.error("Cannot set level: " + level + " for '" + name + "'"); diff --git a/spring-boot/src/test/java/org/springframework/boot/logging/LoggingApplicationListenerTests.java b/spring-boot/src/test/java/org/springframework/boot/logging/LoggingApplicationListenerTests.java index d2d1548b13..7eceeb3dbb 100644 --- a/spring-boot/src/test/java/org/springframework/boot/logging/LoggingApplicationListenerTests.java +++ b/spring-boot/src/test/java/org/springframework/boot/logging/LoggingApplicationListenerTests.java @@ -210,6 +210,18 @@ public class LoggingApplicationListenerTests { assertThat(this.outputCapture.toString(), containsString("testattrace")); } + @Test + public void parseLevelsCaseInsensitive() throws Exception { + EnvironmentTestUtils.addEnvironment(this.context, + "logging.level.org.springframework.boot=TrAcE"); + this.initializer.initialize(this.context.getEnvironment(), + this.context.getClassLoader()); + this.logger.debug("testatdebug"); + this.logger.trace("testattrace"); + assertThat(this.outputCapture.toString(), containsString("testatdebug")); + assertThat(this.outputCapture.toString(), containsString("testattrace")); + } + @Test public void parseLevelsWithPlaceholder() throws Exception { EnvironmentTestUtils.addEnvironment(this.context, "foo=TRACE",