"""Logger utility.""" from uuid import uuid4 from fastapi import Request from owslogger import logger from moneyhub.config import Config def get_logger(request: Request | None = None) -> logger: """Return logger utility to create logs. Args: request (Request): Request object Returns: logger: the logger object """ CORRELATION_ID = request.headers.get('correlation-id') or str(uuid4()) if request \ else str(uuid4()) # Global logger return logger.setup( Config.ENVIRONMENT, Config.LOGGER_NAME, Config.LOGGER_LEVEL, Config.SERVICE_NAME, CORRELATION_ID, Config.SERVICE_VERSION)