使用 uwsgi 的 Django 日志文件权限
Posted
技术标签:
【中文标题】使用 uwsgi 的 Django 日志文件权限【英文标题】:Django log file permissions with uwsgi 【发布时间】:2015-08-31 07:06:59 【问题描述】:我将 Django 与 uwsgi 一起使用。该进程以www-data
用户身份运行,该用户也是所有日志文件的所有者(包括 uwsgi 和 Django)。当我使用 RotatingFileHandler 登录 Django 时,会创建具有以下权限的新日志文件:
-rw-r--r-- 1 www-data www-data
我已将当前登录的用户 (ubuntu
) 添加到 www-data
组,但仍然没有上述日志文件的写入权限。结果,我无法运行python manage.py test
。
我如何告诉 (i) uwsgi 或 (ii) 日志框架或 (iii) 文件处理程序来创建具有权限 0660
的日志文件,以便 ubuntu
和 www-data
都可以读取/写入日志文件。
但有一个警告,如果我运行 manage.py test
并且此时发生 logrotation,新的日志文件将归 ubuntu
用户所有,uwsgi 会抱怨。我不知道是否可以通过更改当前用户/组权限结构来解决此问题。
【问题讨论】:
Does python logging.handlers.RotatingFileHandler allow creation of a group writable log file? 的可能重复项 【参考方案1】:我认为您需要实现自己的子类,如 this SO 中所示
【讨论】:
以上是关于使用 uwsgi 的 Django 日志文件权限的主要内容,如果未能解决你的问题,请参考以下文章