[Python] Is it okay to instantiate python LoggerAdapter multiple times to update extra...

Discussão em 'Python' iniciado por Stack, Julho 8, 2025.

  1. Stack

    Stack Membro Participativo

    I am trying to log an extra parameter in my FastAPI python application during a job run. I know I can use LoggerAdapter

    This is my setup

    # mylog.py
    def get_logger(name: str):
    formatter = logging.Formatter(fmt="%(asctime)s [%(job_id)s] [%(levelname)s] %(name)s: %(message)s", datefmt="%Y-%m-%d %H:%M:%S", defaults={"job_id": None})

    logger = logging.getLogger(name)
    logger.setLevel(level="INFO")

    std_out_handler = logging.StreamHandler()
    std_out_handler.setFormatter(formatter)

    logger.addHandler(std_out_handler)

    return logger

    # job.py
    from mylog import get_logger

    logger = get_logger("job_logger")

    # I have a job that can be run multiple time in the background
    def job_function(job_id: str):
    # do stuff
    # I want to add an extra job_id parameter to my logging format
    # My question is if it's safe to instantiate LoggerAdapter over and over again
    logger = logging.LoggerAdapter(logger, {'job_id': job_id})
    logger.info("Logging here as usual")



    My question is if it's safe/intended to instantiate logging.LoggerAdapter over and over. What would be the best approach here to log different extra parameters that changes at runtime?

    Thanks

    Continue reading...

Compartilhe esta Página