import logging
from loguru import logger
import sys
def get_logger(name: str):
"""Configure and return a logger instance"""
# Remove any existing handlers
logger.remove()
# Add a new handler with custom format
logger.add(
sys.stderr,
format="{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {name}:{function}:{line} - {message}",
level="INFO"
)
# Add file handler for persistent logging
logger.add(
"logs/app.log",
rotation="500 MB",
retention="10 days",
level="DEBUG",
compression="zip"
)
# Create logger for the module
module_logger = logger.bind(name=name)
return module_logger