# api/logger.py | |
import logging | |
import os | |
def setup_logger(name): | |
logger = logging.getLogger(name) | |
if not logger.handlers: | |
# Set logging level based on environment | |
log_level = os.getenv("LOG_LEVEL", "INFO").upper() | |
logger.setLevel(getattr(logging, log_level, logging.INFO)) | |
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') | |
# Console handler | |
console_handler = logging.StreamHandler() | |
console_handler.setFormatter(formatter) | |
logger.addHandler(console_handler) | |
# File Handler - Error Level | |
# Uncomment the following lines to enable error logging to a file | |
# error_file_handler = logging.FileHandler('error.log') | |
# error_file_handler.setFormatter(formatter) | |
# error_file_handler.setLevel(logging.ERROR) | |
# logger.addHandler(error_file_handler) | |
return logger | |