33 lines
767 B
Python
33 lines
767 B
Python
import logging
|
|
import sys
|
|
from pathlib import Path
|
|
|
|
log_dir = Path.home() / ".local" / "share" / "refit"
|
|
log_dir.mkdir(parents=True, exist_ok=True)
|
|
|
|
log_file = log_dir / "refit.log"
|
|
|
|
|
|
logging.basicConfig(
|
|
level=logging.DEBUG,
|
|
format="%(asctime)s - %(levelname)s - %(message)s",
|
|
filename=log_file,
|
|
)
|
|
logger = logging.getLogger()
|
|
|
|
|
|
def handle_exception(exec_type, exec_value, exec_traceback):
|
|
if issubclass(exec_type, KeyboardInterrupt):
|
|
sys.__excepthook__(exec_type, exec_value, exec_traceback)
|
|
return
|
|
logger.error(
|
|
"External error accured",
|
|
exc_info=(exec_type, exec_value, exec_traceback),
|
|
)
|
|
|
|
|
|
sys.excepthook = handle_exception
|
|
|
|
# logger.debug(f"Log path:\t{log_dir}")
|
|
# logger.debug(f"Log file:\t{log_file}")
|