Python 旋转FileHandler写入其他文件夹以进行备份
我正在使用Python logger,创建一个日志文件(Python 旋转FileHandler写入其他文件夹以进行备份,python,logging,Python,Logging,我正在使用Python logger,创建一个日志文件(/opt/feedlog.log) 我特别尝试创建一个备份文件夹来归档旧的日志文件 /opt/archive 将包含 /opt/archive/feedlog.log.1 /opt/archive/feedlog.log.2 /opt/archive/feedlog.log.3 下面是我的示例代码: import logging from logging.handlers import RotatingFileHandler logge
/opt/feedlog.log
)
我特别尝试创建一个备份文件夹来归档旧的日志文件
/opt/archive
将包含
/opt/archive/feedlog.log.1
/opt/archive/feedlog.log.2
/opt/archive/feedlog.log.3
下面是我的示例代码:
import logging
from logging.handlers import RotatingFileHandler
logger = logging.getLogger('feed_logger')
logger.setLevel(logging.DEBUG)
handler = RotatingFileHandler('/opt/feedlog.log', maxBytes=1000, backupCount=10)
logger.addHandler(handler)
for _ in range(10000):
logger.warning('Hello world !!!')
是否有任何方法可以强制旋转文件处理程序
在不同的文件夹存档
而不是原始文件夹中创建备份文件
任何输入都会有帮助
谢谢 最简单的方法是创建一个函数来执行此操作,并将其作为
rotator
参数传递给RotatingFileHandler
另一种方法是创建自己版本的
RotatingFileHandler
。这应该比听起来容易。签出所有您需要的是创建您自己的继承自此类的类,并重写rotate
从logging.handlers导入RotatingFileHandler
类MyRotatingFileHandler(RotatingFileHandler):
#从python源代码复制
def旋转(自身、源、目标):#在此处更改目标
如果不可调用(自旋转器):
#问题18940:如果延迟为真,则可能未创建文件。
如果os.path.存在(源):
重命名操作系统(源、目标)
其他:
自旋转器(源、目标)