无法将日志写入Flask应用程序的文件

时间:2019-05-30 00:01:28

标签: python

我只是在与Flask应用程序一起使用Logging。使用基本的“ Hello world”程序进行测试。我不能用发出请求的IP,标头等来编写上下文日志。

仅将基本的“ werkzeug”日志写入日志文件。代码中为按照格式

获取日志所需的任何更改
from flask import Flask,request
from flask_restful import Resource, Api
import logging
app = Flask(__name__)
api = Api(app)

class HelloWorld(Resource):
    def get(self):
        return {'hello': 'world'}

api.add_resource(HelloWorld, '/')

if __name__ == '__main__':
    import logging

    class ContextualFilter(logging.Filter):
        def filter(self, log_record):
        log_record.url = request.path
        log_record.method = request.method
        log_record.ip = request.environ.get("REMOTE_ADDR")
        log_record.headers = request.headers

        return True
context_provider = ContextualFilter()
app.logger.addFilter(context_provider)

import logging

logging.basicConfig(filename='error.log', level=logging.DEBUG)
app.run(host="0.0.0.0")
app.run(debug=True)

error.log文件具有基本日志,例如“ INFO:werkzeug:127.0.0.1--[29 / May / 2019 16:39:37]“ GET / HTTP / 1.1” 200-“寻找HTTP日志。

0 个答案:

没有答案