Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
4.1k views
in Technique[技术] by (71.8m points)

python - Flask logging to database class doesn't work

I'm trying to log request info to database (need for admin frontend). Coded a primitive class to test it. So it doesn't work at all bot on test server and in production. Database request is correct, I've checked it. Where can be a problem?

...
import logging

db = sqlalchemy.create_engine(config.connection_string)

class Logger(logging.Handler):
    def emit(self, record):
        path = request.path
        method = request.method
        ip = request.remote_addr

        db.execute(f'INSERT INTO request_log(req_type, req_ip, req_route) VALUES({method}, {ip}, {path})')

app = Flask(__name__)
log = Logger()
log.setLevel(logging.INFO)
app.logger.addHandler(log)

# routes
@app.route("/someroute", methods=['GET'])
...
...

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
等待大神答复

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...