|
import logging |
|
import sys |
|
from datetime import datetime |
|
from loguru import logger as _logger |
|
from pathlib import Path |
|
import sys |
|
|
|
_print_level = "INFO" |
|
|
|
PROJECT_ROOT = Path(sys.path[0]) |
|
|
|
def define_log_level(print_level="INFO", logfile_level="DEBUG", name: str = None): |
|
"""Adjust the log level to above level""" |
|
global _print_level |
|
_print_level = print_level |
|
|
|
current_date = datetime.now() |
|
formatted_date = current_date.strftime("%Y%m%d%H%M%S") |
|
log_name = ( |
|
f"{name}_{formatted_date}" if name else formatted_date |
|
) |
|
|
|
_logger.remove() |
|
_logger.add(sys.stderr, level=print_level) |
|
_logger.add(PROJECT_ROOT / f"logs/{log_name}.log", level=logfile_level) |
|
return _logger |
|
|
|
|
|
logger = define_log_level() |
|
|