Gunicorn访问日志显示空用户



使用以下命令:

gunicorn --workers=4 my_project.wsgi -b 0.0.0.0:8000 --log-level=info --access-logfile=my_project/logs/gunicorn_logs.txt

我可以记录每个请求。但是,这些日志不包括有关用户的信息:

127.0.0.1 - - [02/Aug/2018:13:46:44 -0500] GET /metrics/data HTTP/1.1 200 1589185 http://localhost:8000/ Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36

默认的格式字符串是%(h)s %(l)s %(u)s %(t)s "%(r)s" %(s)s %(b)s "%(f)s" "%(a)s",如果我正确理解文档,"用户名"应该显示在"引用人地址"之后和"请求日期"之前。我还将该格式字符串作为run命令的一部分,只是为了验证是否发生了同样的事情,而且确实发生了。

我有可能让Gunicorn也记录提出请求的用户吗?如有任何帮助,我们将不胜感激。

这是运行Gunicorn 19.7.1和Django 1.11.9。

从gunicorn源代码来看,这似乎只适用于http基本身份验证用户名。现在,这不是一种非常常见的身份验证方法,django有自己的用户身份验证,与基本身份验证无关。

除非您使用的是基本身份验证(出于某种原因(,否则预期值为-。如果您想为每个请求记录django用户,您必须使用django自己的日志记录。

最新更新