Apply logging level changes to cached loggers and handlers

This commit is contained in:
Andras Schmelczer 2026-10-27 20:09:54 +00:00
commit e15f576d37
2 changed files with 17 additions and 1 deletions

View file

@ -33,4 +33,8 @@ def get_logger(
logger.addHandler(stdout_handler)
loggers[name] = logger
return loggers[name]
logger = loggers[name]
logger.setLevel(level)
for handler in logger.handlers:
handler.setLevel(level)
return logger

View file

@ -1,3 +1,5 @@
import logging
from great_ai import ParallelTinyDbDriver, configure
from great_ai.context import get_context
from great_ai.large_file import LargeFileLocal
@ -17,3 +19,13 @@ def test_explicit_custom_backends_are_preserved(isolated_context: None) -> None:
)
assert isinstance(get_context().tracing_database, CustomDatabase)
assert get_context().large_file_implementation is CustomStorage
def test_configuration_updates_existing_logger_levels(isolated_context: None) -> None:
logger = get_context().logger
handlers = list(logger.handlers)
configure(log_level=logging.ERROR, disable_se4ml_banner=True)
assert get_context().logger is logger
assert logger.level == logging.ERROR
assert logger.handlers == handlers
assert all(handler.level == logging.ERROR for handler in handlers)