From 9d25b72f74712c710bec72216c5b81c961a66241 Mon Sep 17 00:00:00 2001 From: Guewen Baconnier Date: Fri, 19 Jul 2019 15:34:02 +0200 Subject: [PATCH] [10.0] Filter /monitoring/status werkzeug logs (#67) * Filter /monitoring/status werkzeug logs With healtchecks, they constitute 95% of our logs. Let's stop wasting resources and shut them up. --- monitoring_status/controllers/main.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/monitoring_status/controllers/main.py b/monitoring_status/controllers/main.py index d575103..1bab563 100644 --- a/monitoring_status/controllers/main.py +++ b/monitoring_status/controllers/main.py @@ -2,6 +2,7 @@ # Copyright 2016 Camptocamp SA # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html) +import logging import json import werkzeug @@ -10,6 +11,21 @@ from odoo import http from odoo.addons.web.controllers.main import ensure_db +class HealthCheckFilter(logging.Filter): + + def __init__(self, path, name=''): + super(HealthCheckFilter, self).__init__(name) + self.path = path + + def filter(self, record): + return self.path not in record.getMessage() + + +logging.getLogger('werkzeug').addFilter( + HealthCheckFilter('"GET /monitoring/status HTTP/1.1"') +) + + class Monitoring(http.Controller): @http.route('/monitoring/status', type='http', auth='none')