uwsgi+nginx+flask 如何在控制台打日志?

我用的是Python3

使用nginx代理uwsgi 每次执行uwsgi,在控制台看不到代码中的printlogging信息

如果才能打印出来信息呢?

阅读 11.1k
3 个回答

自己写日志文件吧

uwsgi是部署的时候用的,你用它调试不方便吧!

我一般用 daemonize 参数来进行日志配置。常用的 uWSGI 路径配置如下:

; 将写入 log 的工作委托给 master 进程
log-master = true

; 单独开一个线程进行 log 写入工作,这样有更好的性能
threaded-log = true

; 所有 log 都会写入这个文件
; 若希望所有log放在一起,设置了此选项后,不要设置 req-logger 和 logger 选项
; %d 代表 uwsgi.ini 所在文件夹(包含结尾的/), %n 代表 uwsgi.ini 的主文件名
; 魔术变量: http://uwsgi-docs-zh.readthedocs.io/zh_CN/latest/Configuration.html#magicvars
daemonize = %dlogs/%n.log

; 将 uWSGI 请求 log 写入单独的 log 文件,这样做可以让log更加分离,便于查错
; 设置了此选项后,daemonize 设置的输出文件就得不到任何输出了
req-logger = file:%dlogs/req.log

; 将 uWSGI stdout/stderr log 写入单独的 log 文件
; 因为设定了 req-logger ,必须同时设定 logger ,此时 daemonize 不会有任何输出
logger = file:%dlogs/%n.log

更详细的内容我在 Flask+uWSGI 的 Logging 支持 中有叙述。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题