[英]Create a new log file each time in python
我是Python的新手,这个查询听起来太基础了。
我希望每次运行应用程序时都创建一个新的日志文件。
我使用下面的代码完成了我的要求。
def initializeLog(logSpec):
dirName = logSpec['dirName']
fileName = logSpec['fileName']
timeStamp = time.strftime("%Y%m%d%H%M%S")
logFQ = dirName + fileName + "_" + timeStamp + ".log"
if not os.path.exists(dirName):
os.makedirs(dirName)
logFormat = '%(asctime)s %(funcName)-25s %(levelname)-7s : %(message)s'
logging.basicConfig(
level = logging.INFO,
format = logFormat,
fileName = logFQ,
filemode = 'w'
)
我知道这远非理想,如果我能获得一些关于如何最好地实现的建议,那将是很棒的。 我已经检查了WatchedFileHandler,RotatingFileHandler,但无法让它们正常工作以适应我的要求。
请指教。
您应该花一些时间浏览Python日志记录文档:
总而言之,您可以创建一个记录器并将其配置为在不同级别进行报告,还可以将其配置为每次创建新的日志文件,再添加到控制台的输出,或者每天创建的新文件……这里有很多选项。
import logging
# set up logging to file - see previous section for more details
logging.basicConfig(level=logging.DEBUG,
format='%(asctime)s %(name)-12s %(levelname)-8s %(message)s',
datefmt='%m-%d %H:%M',
filename='/temp/myapp.log',
filemode='w')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.