12345678910111213141516171819202122232425 |
- # -*- coding: utf-8 -*-
- # @Author: privacy
- # @Date: 2022-07-14 13:26:15
- # @Last Modified by: privacy
- # @Last Modified time: 2022-08-09 16:44:04
- import logging
- class LoggerHandler(logging.Logger):
- def __init__(self, name: str, console_handler_level: str = logging.INFO, fmt: str = '%(levelname)s: %(asctime)s: %(name)s: %(filename)s: %(lineno)d: %(funcName)s: %(message)s'):
- super().__init__(name)
- self.setLevel(logging.INFO)
- self.fmt = logging.Formatter(fmt)
- self.set_console_handler(console_handler_level)
- def set_console_handler(self, console_handler_level: str = logging.INFO) -> None:
- ch = logging.StreamHandler()
- ch.setLevel(console_handler_level)
- ch.setFormatter(self.fmt)
- self.addHandler(ch)
- def set_file_handler(self, filename: str, mode: str = "a", file_handler_level: str = logging.WARNING) -> None:
- fh = logging.FileHandler(filename, mode=mode, encoding='utf-8')
- fh.setLevel(file_handler_level)
- fh.setFormatter(self.fmt)
- self.addHandler(fh)
|