chkbit-py/chkbit/status.py

29 lines
736 B
Python
Raw Permalink Normal View History

2024-01-09 22:07:43 +00:00
from __future__ import annotations
2023-12-21 18:29:27 +00:00
from enum import Enum
2024-01-09 22:07:43 +00:00
import logging
2023-12-21 18:29:27 +00:00
class Status(Enum):
ERR_DMG = "DMG"
ERR_IDX = "EIX"
WARN_OLD = "old"
NEW = "new"
UPDATE = "upd"
OK = "ok "
IGNORE = "ign"
2023-12-21 18:29:27 +00:00
INTERNALEXCEPTION = "EXC"
UPDATE_INDEX = "iup"
2024-01-09 22:07:43 +00:00
@staticmethod
def get_level(status: Status):
if status == Status.INTERNALEXCEPTION:
return logging.CRITICAL
elif status in [Status.ERR_DMG, Status.ERR_IDX]:
return logging.ERROR
if status == Status.WARN_OLD:
return logging.WARNING
elif status in [Status.NEW, Status.UPDATE, Status.OK, Status.IGNORE]:
return logging.INFO
else:
return logging.DEBUG