我正在使用命令python app.py
从此link运行烧瓶应用。
使用sys.stdout.write
打印的更多日志不会打印在控制台上。但是,使用logging.StreamHandler
可以将消息重定向到stdout。
有效,
import logging
import logging.handlers
logger = logging.getLogger('kumologging')
logger.setLevel(logging.DEBUG)
ch = logging.StreamHandler()
logger.addHandler(ch)
logger.info("hey, i am from logger obj")
不起作用
import sys
sys.stdout.write("hey, i am from stdout")
flask会覆盖sys.stdout文件描述符,将日志重定向到其他地方吗?
答案 0 :(得分:6)
afaik flask app.run()
使用gunicorn
网络包
我相信gunicorn实际上是重定向输出的那个
输出可能在/var/log/gunicorn/error.log
(不确定它在Windows上的位置:/)
或其可能的sys.stdout
只是没有刷新缓冲区,
写完之后试试sys.stdout.flush()