我。创建 Flask 应用程序时,我到底在哪里初始化日志记录?
就在
app = Flask(__name__)
之前?二.默认情况下,Flask 以通用格式记录 HTTP 请求,即
- 127.0.0.1 - - [05/Oct/2024 20:39:49] "GET / HTTP/1.1" 200 -
如何将其更改为以下内容?
Received POST request "/rest/api/1234/567" from IP 192.168.0.1. Content-Type =
"application/json", Content-Length = 12345, User-Agent = "Mozilla 1.2.3"
三.最后但并非最不重要的一点是,Flask 附带的开发服务器是否有一些可以注册的 shutdown 处理程序? 当用户按 Ctrl+C 终止它时,我想执行一些最终的清理操作...
要自定义 Flask 的日志记录,您可以参考文档这里
您可以使用具有附加功能的自定义记录器覆盖或禁用默认应用程序记录器。
来到关闭处理程序,Flask 中没有内置处理程序。
对于
platform-independent
解决方案,Flask提供了一种更兼容的方法,用于通过teardown_appcontext或atexit
处理程序注册关闭行为。
from flask import Flask
import atexit
app = Flask(__name__)
def shutdown_handler():
# Perform cleanup tasks here
print("Shutting down...")
atexit.register(shutdown_handler)
if __name__ == "__main__":
app.run(debug=True)