I am currently developing a core utils package where I want to set some logging properties (I know that this is not best practice, but it´s for interal purposes and intended to generate logs). When I now import the package nothing gets logged: # core.__main__.py class BaseLoggerConfig(BaseModel): LOG_FORMAT: str = "%(levelprefix)s %(asctime)s %(name)s:%(lineno)d: %(message)s" DATEFMT: str = "%Y-%m-%d %H:%M:%S" LOG_LEVEL: int = logging.INFO version: int = 1 disable_existing_loggers: bool = False formatters: dict = { "default": { # "()": "uvicorn.logging.DefaultFormatter", "fmt": LOG_FORMAT, "datefmt": DATEFMT, }, } filters: dict = {} handlers: dict = { "default": { "formatter": "default", "class": "logging.StreamHandler", "stream": "ext://sys.stderr", } } loggers: dict = {} def __init__(self, name: str, **data): super().__init__(**data) self.loggers[name] = { "handlers": ["default"], "level": self.LOG_LEVEL, "propagate": False, } LOG_CONFIG = BaseLoggerConfig(__name__) logging.config.dictConfig(LOG_CONFIG) - core.__main__ Level: INFO Handlers: ['StreamHandler'] I now have logging in my other files, like: # core.utils import logging logger = logging.getLogger(__name__) def test(): logger.info(f"I am a log from {__name__}") # test.py import logging from core.utils import test logger = logging.getLogger(__name__) test() What am I missing? Continue reading...