Archived
1
0
Fork 0
This repository has been archived on 2024-04-26. You can view files and clone it, but cannot push or open issues or pull requests.
akari-bot/core/logger.py
2021-10-01 09:18:04 +08:00

51 lines
1,013 B
Python

'''基于logging的日志器。'''
import logging
from abc import ABC, abstractmethod
class AbstractLogger(ABC):
@abstractmethod
def info(self, msg):
pass
@abstractmethod
def error(self, msg):
pass
@abstractmethod
def debug(self, msg):
pass
@abstractmethod
def warn(self, msg):
pass
@abstractmethod
def exception(self, msg):
pass
class Logginglogger(AbstractLogger):
def __init__(self, fmt="[%(asctime)s][%(levelname)s]: %(msg)s", **kwargs):
logging.basicConfig(
format=fmt,
level=logging.INFO if not kwargs.get("debug") else logging.DEBUG
)
def info(self, msg):
return logging.info(msg)
def error(self, msg):
return logging.error(msg)
def debug(self, msg):
return logging.debug(msg)
def warn(self, msg):
return logging.warning(msg)
def exception(self, msg):
return logging.exception(msg)
Logger = Logginglogger()