Compare commits
14
Commits
f24e628e5b
..
v0.1.1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5e2842e9b5 | ||
|
|
2ad038211c | ||
|
|
fd36654d58 | ||
|
|
0197339eb0 | ||
|
|
34186463fc | ||
|
|
5af8d7f443 | ||
|
|
2349439fcc | ||
|
|
d20c0a4076 | ||
|
|
605f423ff0 | ||
|
|
e78d55759c | ||
|
|
0cb912466e | ||
|
|
36eff17046 | ||
|
|
5d34b8eeaf | ||
|
|
6696ff900e |
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
[project]
|
[project]
|
||||||
name = "utils"
|
name = "utils"
|
||||||
version = "0.1.3"
|
version = "0.1.2"
|
||||||
description = "Some hopefully useful utilities to use in everyday coding"
|
description = "Some hopefully useful utilities to use in everyday coding"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
authors = [
|
authors = [
|
||||||
|
|||||||
@@ -72,10 +72,6 @@ class LoggingSettings(BaseSettingsConfig):
|
|||||||
root_logger = logging.getLogger()
|
root_logger = logging.getLogger()
|
||||||
root_logger.setLevel(level)
|
root_logger.setLevel(level)
|
||||||
|
|
||||||
# Keep Uvicorn's own debug output from following the application's level.
|
|
||||||
for logger_name in ("uvicorn", "uvicorn.error", "uvicorn.access"):
|
|
||||||
logging.getLogger(logger_name).setLevel(logging.INFO)
|
|
||||||
|
|
||||||
# Replace and close existing handlers to avoid duplicate output and resource leaks.
|
# Replace and close existing handlers to avoid duplicate output and resource leaks.
|
||||||
for handler in root_logger.handlers[:]:
|
for handler in root_logger.handlers[:]:
|
||||||
root_logger.removeHandler(handler)
|
root_logger.removeHandler(handler)
|
||||||
|
|||||||
@@ -13,7 +13,6 @@ from uvicorn.logging import DefaultFormatter
|
|||||||
from utils.logging_config import LoggingSettings
|
from utils.logging_config import LoggingSettings
|
||||||
|
|
||||||
SECONDS_PER_DAY = 24 * 60 * 60
|
SECONDS_PER_DAY = 24 * 60 * 60
|
||||||
UVICORN_LOGGER_NAMES = ("uvicorn", "uvicorn.error", "uvicorn.access")
|
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
@@ -21,8 +20,6 @@ def restore_root_logger() -> Generator[None]:
|
|||||||
root = logging.getLogger()
|
root = logging.getLogger()
|
||||||
old_handlers = root.handlers[:]
|
old_handlers = root.handlers[:]
|
||||||
old_level = root.level
|
old_level = root.level
|
||||||
uvicorn_loggers = [logging.getLogger(name) for name in UVICORN_LOGGER_NAMES]
|
|
||||||
old_uvicorn_levels = [logger.level for logger in uvicorn_loggers]
|
|
||||||
for handler in old_handlers:
|
for handler in old_handlers:
|
||||||
root.removeHandler(handler)
|
root.removeHandler(handler)
|
||||||
|
|
||||||
@@ -35,8 +32,6 @@ def restore_root_logger() -> Generator[None]:
|
|||||||
for handler in old_handlers:
|
for handler in old_handlers:
|
||||||
root.addHandler(handler)
|
root.addHandler(handler)
|
||||||
root.setLevel(old_level)
|
root.setLevel(old_level)
|
||||||
for logger, level in zip(uvicorn_loggers, old_uvicorn_levels):
|
|
||||||
logger.setLevel(level)
|
|
||||||
|
|
||||||
|
|
||||||
def test_sets_valid_log_level(restore_root_logger: None) -> None:
|
def test_sets_valid_log_level(restore_root_logger: None) -> None:
|
||||||
@@ -45,17 +40,6 @@ def test_sets_valid_log_level(restore_root_logger: None) -> None:
|
|||||||
assert logging.getLogger().level == logging.DEBUG
|
assert logging.getLogger().level == logging.DEBUG
|
||||||
|
|
||||||
|
|
||||||
def test_keeps_uvicorn_loggers_at_info_with_debug_root(
|
|
||||||
restore_root_logger: None,
|
|
||||||
) -> None:
|
|
||||||
LoggingSettings(LOG_LEVEL="DEBUG", LOG_TO_FILE=False)
|
|
||||||
|
|
||||||
assert all(
|
|
||||||
logging.getLogger(name).level == logging.INFO
|
|
||||||
for name in UVICORN_LOGGER_NAMES
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
def test_invalid_log_level_falls_back_to_info(restore_root_logger: None) -> None:
|
def test_invalid_log_level_falls_back_to_info(restore_root_logger: None) -> None:
|
||||||
with patch("utils.logging_config.logger.error") as log_error:
|
with patch("utils.logging_config.logger.error") as log_error:
|
||||||
LoggingSettings(LOG_LEVEL="NOT_A_LEVEL", LOG_TO_FILE=False)
|
LoggingSettings(LOG_LEVEL="NOT_A_LEVEL", LOG_TO_FILE=False)
|
||||||
|
|||||||
Reference in New Issue
Block a user