从多进程记录损坏的文件?

问题描述

我使用通过 gunicorn 服务的 Django 和四个 gevent 工作人员,并有一些日志记录配置,特别是它使用 RotatingFileHandler。 python 文档指出:

虽然日志记录是线程安全的,并且支持从单个进程中的多个线程记录到单个文件,但不支持从多个进程记录到单个文件,因为没有标准的方法来序列化对单个文件的访问Python 中跨多个进程的文件。

因此,在我当前的配置中,gunicorn 只有一个父进程,并且有一些线程,因此日志记录不应损坏文件,但在我的生产中,备份文件已损坏但无法重现这种情况在我的本地设置中。

我应该假设配置没问题并继续使用它还是应该采用不同的方法(例如 multiprocessing.QueueSocketHandler)?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)