我有一个设置Django日志记录的设置,每天可以将日志写入新文件中。
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'file': {
'level': 'DEBUG',
'class': 'logging.handlers.TimedRotatingFileHandler',
'filename': '/path/to/log/dev.log',
'when': 'midnight',
'backupCount': 60,
},
},
'loggers': {
'django': {
'handlers': ['file'],
'level': 'DEBUG',
'propagate': True,
},
},
}
当gunicorn连续运行几天时,效果很好。
但是,当我启动至少从前一天开始已停止的gunicorn服务时,会以 root 而不是 my_gunicorn_user 创建一个新的dev.log文件,为什么?
我使用:
Ubuntu 18.04
NGINX 1.14.1
python 3.5.2
独角兽19.9
django 2.1.1
NGINX以www-data和gunicorn my_gunicorn_user身份运行
$ ls -l /path/to/
drwxrwxr-x 2 my_gunicorn_user users bla bla bla log
$ ls -l /path/to/log/
-rw-r--r-- 1 my_gunicorn_user webapps bla bla dev.log.the_day_before_yesterdy
-rw-r--r-- 1 my_gunicorn_user webapps bla bla dev.log.yesterday
-rw-r--r-- 1 root root bla bla today dev.log