【发布时间】:2014-10-21 05:58:00
【问题描述】:
我需要重命名一个日志文件,但之后继续记录它。我正在运行 Python 3.x 并使用 logging 模块创建日志。
logger = logging.getLogger(r'mylogger')
handler = logging.FileHandler(r'mylog.txt', mode = r'w')
logger.addHandler(handler)
logger.info(r'msg 1')
logger.info(r'msg 2')
handler.renameFile(r'my_newlog.txt') # <--- Is something like this possible?
logger.info(r'msg 3')
有谁知道这样的事情是否可行?如果没有,我将如何去做?我的一个想法是关闭文件(handler.close()),从记录器中删除处理程序,重命名旧文件,使用新文件名创建一个新处理程序并将其添加到记录器。然而问题是我需要创建一个完全相同的处理程序,即它需要具有与旧处理程序相同的属性(当然文件名除外)。有没有一种简单的方法来存储旧属性,然后使用它们来设置新处理程序的属性?
感谢任何帮助。
【问题讨论】:
标签: logging python-3.x