diff --git a/home.admin/BlitzPy/blitzpy/__init__.py b/home.admin/BlitzPy/blitzpy/__init__.py index c217ead1..2d6c6ba7 100644 --- a/home.admin/BlitzPy/blitzpy/__init__.py +++ b/home.admin/BlitzPy/blitzpy/__init__.py @@ -1,8 +1,10 @@ -# -*- coding: utf-8 -*- - -from .config import RaspiBlitzConfig, RaspiBlitzInfo - -__all__ = [ - 'RaspiBlitzConfig', - 'RaspiBlitzInfo', -] +# -*- coding: utf-8 -*- + +from .config import RaspiBlitzConfig, RaspiBlitzInfo +from .exceptions import BlitzError + +__all__ = [ + 'RaspiBlitzConfig', + 'RaspiBlitzInfo', + 'BlitzError' +] diff --git a/home.admin/BlitzPy/blitzpy/exceptions.py b/home.admin/BlitzPy/blitzpy/exceptions.py new file mode 100644 index 00000000..2289dc04 --- /dev/null +++ b/home.admin/BlitzPy/blitzpy/exceptions.py @@ -0,0 +1,16 @@ +from datetime import datetime + +TS_FORMAT = "%Y-%m-%dT%H:%M:%SZ" + + +class BlitzError(Exception): + def __init__(self, short: str, details: dict = None, org: Exception = None): + self.short: str = str(short) + if details: + self.details: dict = details + self.details.update({'timestamp': datetime.utcnow().strftime(TS_FORMAT)}) + else: + self.details = dict() + self.details['timestamp'] = datetime.utcnow().strftime(TS_FORMAT) + + self.org: Exception = org