【发布时间】:2018-07-27 22:26:45
【问题描述】:
过去 5 小时一直在寻找答案,但一无所获。
我有一个烧瓶 (python 2.7) 应用程序可以在 uwsgi 上正常工作,但我没有日志。
/etc/uwsgi/uwsgi.ini 配置:
[uwsgi]
socket = /tmp/uwsgi.sock
chown-socket = nginx:nginx
chmod-socket = 664
cheaper = 2
processes = 16
/app/uwsgi.ini
[uwsgi]
module = main
callable = app
/app/main.py(没有 uwsgi 也能正常工作)
app = Flask(__name__)
...
...
...
if __name__ == "__main__":
with open("{0}/logging.config.json".format(CONFIG_PATH), "r") as fd:
logging.config.dictConfig(json.load(fd))
app.run()
logging.config.json:
...
"formatters": {
"simple": {
"()": "pythonjsonlogger.jsonlogger.JsonFormatter",
"format": "%(asctime)s %(levelname)s %(module)s %(message)s"
}
...
"handlers": {
"console":{
"level": "DEBUG",
"class": "logging.StreamHandler",
"formatter": "simple",
"stream" : "ext://sys.stdout"
},
"loggers": { },
"root": {
"handlers": ["console"],
"level": "DEBUG"
}
}
我还尝试将记录器移到 main 之外(一篇文章建议这样做),如下所示:
app = Flask(__name__)
with open("{0}/logging.config.json".format(CONFIG_PATH), "r") as fd:
logging.config.dictConfig(json.load(fd))
...
...
...
if __name__ == "__main__":
app.run()
它只是破坏了 uwsgi:
--- no python application found, check your startup logs for errors ---
与应用声明之前的日志声明相同(但没有错误 - 应用无法运行)
有什么建议吗?
【问题讨论】:
标签: python-2.7 logging flask uwsgi