revsys / django-health-check

a pluggable app that runs a full check on the deployment, using a number of plugins to check e.g. database, queue server, celery processes, etc.

Home Page:https://readthedocs.org/projects/django-health-check/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Question: how do I disable Celery Task received/succeeded log messages

jpells opened this issue · comments

I would like to disable the Celery Task received/succeeded log messages but only for health_check.contrib.celery.tasks.add. Is there a setting available for this?

Thank you for your help.

The following is how I disabled logs for the Celery health check

import logging
from celery.signals import after_setup_logger

class HealthCheckFilter(logging.Filter):
    def filter(self, record):
        return "health_check.contrib.celery.tasks.add" not in record.getMessage()


@after_setup_logger.connect
def on_after_setup_logger(**kwargs):
    # Logger used for Task Received
    logger = logging.getLogger("celery.worker.strategy")
    logger.addFilter(HealthCheckFilter())
    # Logger used for Task Succeeded
    logger = logging.getLogger("celery.app.trace")
    logger.addFilter(HealthCheckFilter())