一尘不染

禁用针对特定请求/ URL /端点的登录gunicorn

python

最近,存在一个问题,即如何在特定终端的PythonFlask中禁用日志记录(跳过一个终端的Flask日志记录?

例如,/healthcheck这对于您不希望使日志混乱的情况是有道理的。

我为Flask解决了这个问题,但是当使用Gunicorn运行Flask时,我的解决方案不再起作用。

如何使用Gunicorn实现此目的?我想要常规的日志记录行为,但是没有/healthcheck端点的任何日志。


阅读 224

收藏
2021-01-20

共1个答案

一尘不染

我想通了-您需要重写该pre_request钩子。

可以按照以下步骤进行:

您需要创建一个配置文件,例如config/gunicorn.py

def pre_request(worker, req):
    if req.path == '/healthcheck':
        return
    worker.log.debug("%s %s" % (req.method, req.path))

然后,在您启动gunicorn时使用它: gunicorn server:app -c config/gunicorn.py

2021-01-20