123456789101112131415161718192021222324252627282930313233343536373839 |
- import logging
- class Logger(logging.Logger):
- def __init__(self, name):
- super().__init__(name)
- self.setLevel(level=logging.DEBUG)
- self.format_default = '%(asctime)s - %(name)s - %(levelname)s - %(message)s'
- self.console = None
- self.handler = None
- def screen_on(self, level=logging.DEBUG, format=None):
- if self.console:
- return None
-
- if format == None:
- formatter = logging.Formatter(self.format_default)
- else:
- formatter = logging.Formatter(format)
- self.console = logging.StreamHandler()
- self.console.setLevel(level)
- self.console.setFormatter(formatter)
- self.addHandler(self.console)
- def file_on(self, path='log.txt', level=logging.DEBUG, format=None):
- if self.handler:
- return None
-
- if format == None:
- formatter = logging.Formatter(self.format_default)
- else:
- formatter = logging.Formatter(format)
- self.handler = logging.FileHandler(path)
- self.handler.setLevel(level)
- self.handler.setFormatter(formatter)
- self.addHandler(self.handler)
|