python滚动写日志,同时写控制台和文件日志

python滚动写日志,同时写控制台和文件日志,代码如下

import logging
import os
import time
from logging.handlers import TimedRotatingFileHandler

logging.basicConfig(level=logging.DEBUG)

loggers = logging.getLogger("Log")
consoleLog = logging.StreamHandler()
consoleLog.setLevel(logging.DEBUG)

dataStr = time.strftime('%Y-%m-%d', time.localtime(time.time()))
logFilePath = "."+os.sep+"CustomLog_"+dataStr+'.log'
#fileLog=logging.FileHandler("."+os.sep+"CustomLog_"+dataStr+'.log')
fileLog=TimedRotatingFileHandler(logFilePath,  
                                       when="S",  
                                       interval=10,  
                                       backupCount=4)
fileLog.setLevel(logging.WARNING)


consoleFmt = logging.Formatter('%(asctime)s -%(name)s- %(levelname)s :%(message)s')
fileFmt = logging.Formatter('%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s')
consoleLog.setFormatter(consoleFmt)
fileLog.setFormatter(fileFmt)

loggers.addHandler(consoleLog)
loggers.addHandler(fileLog)

for i in range(10):
	loggers.error('this is '+str(i))  
	loggers.debug('This is debug message')
	loggers.info('This is info message')
	loggers.warning('This is warning message')
	try:
		1/0
	except:
		loggers.exception("Exception Logged")

	time.sleep(1) 



 
  


你可能感兴趣的:(代码记忆)