import sys
import logging
class Logger(object):
def __init__(self):
self._logger = logging.getLogger()
self.formatter = logging.Formatter(fmt='%(asctime)s %(filename)s [line:%(lineno)d] %(levelname)s: %(message)s', datefmt='%Y-%m-%d %H:%M:%S')
self._logger.addHandler(self._get_file_handler('log.log'))
self._logger.addHandler(self._get_console_handler())
self._logger.setLevel(logging.INFO)
def _get_file_handler(self, filename):
'''返回一个文件日志handler'''
filehandler = logging.FileHandler(filename=filename)
filehandler.setFormatter(self.formatter)
return filehandler
def _get_console_handler(self):
'''返回一个输出到终端日志handler'''
console_handler = logging.StreamHandler(sys.stdout)
console_handler.setFormatter(self.formatter)
return console_handler
@property
def logger(self):
return self._logger
logger = Logger().logger
转载请注明原文地址:https://ipadbbs.8miu.com/read-27746.html