ESBO-ETC/esbo_etc/lib/logger.py

33 lines
613 B
Python

import logging
import sys
import traceback
def error(self, msg: str, exit_: bool = True):
"""
Handle errors
Parameters
----------
self : Logger
The logger-object
msg : str
Error message to show
exit_ : bool
Exit program
Returns
-------
"""
self._error(msg)
if exit_:
traceback.print_stack()
sys.exit(1)
logging.basicConfig(level=logging.WARNING, format='%(levelname)s: %(message)s', stream=sys.stdout)
logger = logging.getLogger('etc')
logger._error = logger.error
logger.error = error.__get__(logger, logging.Logger)