ChangePercenty2/utils/logger.py

35 lines
1.0 KiB
Python

# from loguru import logger
# import sys
# def setup_logger(log_level="DEBUG"):
# logger.remove()
# logger.add(sys.stdout, level=log_level)
# logger.add("app.log", level=log_level, rotation="10 MB", retention="10 days")
# return logger
import logging
def setup_logger(log_file=None, log_level=logging.INFO):
logger = logging.getLogger()
logger.setLevel(log_level)
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
# 콘솔 핸들러 설정
console_handler = logging.StreamHandler()
console_handler.setLevel(log_level)
console_handler.setFormatter(formatter)
logger.addHandler(console_handler)
# 파일 핸들러 설정 (log_file이 None이 아닌 경우에만 추가)
if log_file is not None:
file_handler = logging.FileHandler(log_file)
file_handler.setLevel(log_level)
file_handler.setFormatter(formatter)
logger.addHandler(file_handler)
else:
print("Log file is None. Only console logging is enabled.")
return logger