diff --git a/tests/test_config.py b/tests/test_config.py index cae3868c..13e7c134 100644 --- a/tests/test_config.py +++ b/tests/test_config.py @@ -482,6 +482,13 @@ def test_config_log_effective_level(log_level: int, uvicorn_logger_level: int) - assert logging.getLogger("uvicorn.asgi").getEffectiveLevel() == effective_level +@pytest.mark.parametrize("log_level", ["INFO", "Info", "info"]) +def test_config_log_level_case_insensitive(log_level: str) -> None: + config = Config(app=asgi_app, log_level=log_level) + config.load() + assert logging.getLogger("uvicorn.error").level == logging.INFO + + def test_ws_max_size() -> None: config = Config(app=asgi_app, ws_max_size=1000) config.load() diff --git a/uvicorn/config.py b/uvicorn/config.py index 3815c7c0..12ea5537 100644 --- a/uvicorn/config.py +++ b/uvicorn/config.py @@ -392,7 +392,7 @@ class Config: if self.log_level is not None: if isinstance(self.log_level, str): - log_level = LOG_LEVELS[self.log_level] + log_level = LOG_LEVELS[self.log_level.lower()] else: log_level = self.log_level logging.getLogger("uvicorn.error").setLevel(log_level)