日志在 Python 3 中的 Flask 下不起作用

用户1187968

我期待控制台打印调试语句,例如“服务器在端口上启动...”,但是当我运行python app.py以下文件时,没有打印出任何内容。我已经将我的应用程序设置为调试模式。

import logging

from flask import Flask
from flask_env import MetaFlaskEnv
from flask_restful import Resource, Api
from flask_restful import reqparse
from tornado.httpserver import HTTPServer
from tornado.ioloop import IOLoop
from tornado.wsgi import WSGIContainer


class Configuration(metaclass=MetaFlaskEnv):
    """
    export PORT=80
    """
    DEBUG = True
    PORT = 5000

LOGGER = logging.getLogger(__name__)
LOGGER.setLevel(logging.DEBUG)

app = Flask(__name__)
app.config.from_object(Configuration)
api = Api(app)

@app.route('/')
def hello_world():
    return 'Hello, World!'

if __name__ == '__main__':
    LOGGER.debug("server starting on port :" + str(app.config["PORT"]))
    HTTP_SERVER = HTTPServer(WSGIContainer(app))
    HTTP_SERVER.listen(port=app.config["PORT"])
    IOLoop.instance().start()
3k-

尝试在根记录器上也设置日志级别:

logging.getLogger().setLevel(logging.DEBUG)

或使用处理程序将输出显式重定向到 stdout:

import sys
import logging

root = logging.getLogger()
handler = logging.StreamHandler(sys.stdout))
root.addHandler(handler)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章