from celery import Celery from app.config import settings from app.logging_config import setup_logging # Configure structured JSON logging for Celery workers setup_logging(settings.LOG_LEVEL) celery_app = Celery( "quiz_tasks", broker=settings.REDIS_URL, backend=settings.REDIS_URL, include=["app.tasks.pdf_tasks", "app.tasks.quiz_tasks"], ) celery_app.conf.task_serializer = "json" celery_app.conf.result_serializer = "json" celery_app.conf.accept_content = ["json"] celery_app.conf.worker_hijack_root_logger = False # Don't override our JSON logging celery_app.conf.broker_connection_retry_on_startup = True