With callback events and more and more, if each event to write a method, which seems redundant code, so today the logs are archived, classified
Event log, look at the situation, we generally kept for 10 days, as to the error log, generally does not complain, so we classified according to size of the file
# 按日期进行分类 import logging import logging.handlers as handlers class InfoLog(object): def __init__(self, file_name): formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') self.logHandler = handlers.TimedRotatingFileHandler(file_name, when='D', interval=1, backupCount=10) self.logHandler.setLevel(logging.INFO) self.logHandler.setFormatter(formatter) self.file_name = file_name self.cons = logging.basicConfig(format='%(asctime)s: %(message)s', level=logging.INFO) def send_msg(self, msg): logger = logging.getLogger(self.file_name) logger.setLevel(logging.INFO) logger.addHandler(self.logHandler) logger.info(msg) callback = InfoLog("callback.log") callback.send_msg("33")
# 按大小进行分类 import logging import logging.handlers as handlers class ErrLog(object): def __init__(self, file_name): formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') self.errorLogHandler = handlers.RotatingFileHandler(file_name, maxBytes=5000, backupCount=0) self.errorLogHandler.setLevel(logging.INFO) self.errorLogHandler.setFormatter(formatter) self.file_name = file_name self.cons = logging.basicConfig(format='%(asctime)s: %(message)s', level=logging.INFO) def send_msg(self, msg): logger = logging.getLogger(self.file_name) logger.setLevel(logging.INFO) logger.addHandler(self.errorLogHandler) logger.info(msg) err = ErrLog("err.log") err.send_msg("44")
# Of parameters in which it occurs is described # number backupCount backup # filename full path to the file # log formatter format to use # Level Log Level # interval The frequency increment