例如,在我的_application/setings.py文件中,我有几个print语句,因此:
print( 'running settings.py: ALLOWED_HOSTS: ' )
print( '\n'.join( ALLOWED_HOSTS ) )..。在运行nginx和Gunicorn的远程服务器上,这个输出到底是去哪里的?
我知道这可能是一个严重的安全漏洞,打印ALLOWED_HOSTS在任何地方,据我所知。这只是一个例子:我正处于学习/实验阶段。
编辑AKX的答案
我没有办法让stdout被定向到journalctl,即使使用-R交换机也是如此。
..。经过多次实验、挫折和令人困惑的502错误之后,我终于找到了一种方法:我的systemd配置文件现在如下所示:
[Unit]
Description=Gunicorn server for mysite.xyz
[Service]
Restart=on-failure
User=mike
WorkingDirectory=/home/mike/sites/mysite.xyz
EnvironmentFile=/home/mike/sites/mysite.xyz/.env
ExecStart=/home/mike/sites/mysite.xyz/virtualenv/bin/gunicorn \
--bind unix:/tmp/mysite.xyz.socket \
-R \
--capture-output \
--error-logfile /home/mike/gunicorn-error.log \
superlists.wsgi:application
[Install]
WantedBy=multi-user.target..。实际上,我发现仅包含-R开关是不够的:您似乎还必须包括--capture-output交换机和--error-logfile交换机(NB --如果不设置该开关,是否存在错误输出的默认目的地)。
使用上面的配置文件,stdout从settings.py转到~/gunicorn-error.log文件。太好了。
发布于 2020-04-17 19:03:13
枪角的标准指向的地方。
例如,如果在systemd下运行,它们最终将进入系统日志,您可以使用journalctl阅读该日志。
发布于 2020-04-17 19:32:01
当您运行gunicorn时,有一个名为-- access的特殊参数,它指定要写入的访问日志文件。如果您喜欢stdout,那么将'-‘设置为value参数。例如:
gunicorn --access-logfile - demoapp.wsgihttps://stackoverflow.com/questions/61278761
复制相似问题