logModule.py
import datetime
import os
import logging
from logging import handlers
class LogClass(object):
"""日志模块"""
def __init__(self, logName="ete"):
"""初始化"""
self.logName = logName
self.logger = logging.getLogger(self.logName)
self.logger.setLevel(logging.DEBUG)
# 当前时间
self.now = datetime.datetime.strftime(datetime.datetime.now(), "%Y-%m-%d")
def setTimedRotatingFileHandler(self, path="E:\\AnhuiMobile\\AnhuiMobile\\script\\checkauth\\logs", fileName="ete"):
"""添加时间滚动日志"""
self.fileFullPath = os.path.join(path, self.now + "_" + fileName + ".log")
self.Handlers = handlers.TimedRotatingFileHandler(self.fileFullPath, when='midnight', interval=1,
backupCount=30)
self.Handlers.setLevel(logging.DEBUG)
# 日志格式
self.formatter = logging.Formatter(
'[%(asctime)s][%(filename)s][line:%(lineno)d][%(levelname)s] - [%(message)s]', "%Y-%m-%d %H:%M:%S")
self.Handlers.setFormatter(self.formatter)
# 添加日志
self.logger.addHandler(self.Handlers)
return self.logger
def setStreamHandler(self):
"""控制台debugr日志输出"""
self.Handlers = logging.StreamHandler()
self.Handlers.setLevel(logging.DEBUG)
# 日志格式
self.formatter = logging.Formatter(
'[%(asctime)s][%(filename)s][line:%(lineno)d][%(levelname)s] - [%(message)s]', "%Y-%m-%d %H:%M:%S")
self.Handlers.setFormatter(self.formatter)
# 添加日志
self.logger.addHandler(self.Handlers)
return self.logger
class Test(LogClass):
def __init__(self):
# 初始化
LogClass.__init__(self, logName='ComparisonXMLFileDiff')
# 日志输出到文件
self.setTimedRotatingFileHandler(fileName='ComparisonXMLFileDiff')
# 控制台输出日志
self.setStreamHandler()
def main(self):
try:
for i in range(2000):
self.logger.info(i)
except Exception as e:
self.logger.error(e)
if __name__ == '__main__':
x = Test()
x.main()