# src/utils/logger.py
from loguru import logger
import sys
import os
from config.settings import settings
# Remove default handler
logger.remove()
# Add console handler
logger.add(
sys.stdout,
level=settings.LOG_LEVEL,
format="{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {name}:{function}:{line} - {message}"
)
# Add file handler
os.makedirs("logs", exist_ok=True)
logger.add(
settings.LOG_FILE,
level=settings.LOG_LEVEL,
format="{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {name}:{function}:{line} - {message}",
rotation="10 MB",
retention="1 week"
)
def get_logger(name: str):
return logger.bind(name=name)