37 lines
907 B
Python
37 lines
907 B
Python
#!/usr/bin/env python3
|
|
"""
|
|
Worker ARQ — lancement du worker de traitement asynchrone.
|
|
|
|
Usage:
|
|
python worker.py
|
|
# ou via arq directement :
|
|
# arq app.workers.image_worker.WorkerSettings
|
|
|
|
Le worker écoute la file Redis et traite les images uploadées
|
|
via le pipeline EXIF → OCR → Vision AI.
|
|
"""
|
|
import logging
|
|
import sys
|
|
from pathlib import Path
|
|
|
|
# Ajouter le répertoire parent au PYTHONPATH pour les imports relatifs
|
|
sys.path.insert(0, str(Path(__file__).resolve().parent))
|
|
|
|
from arq import run_worker
|
|
|
|
from app.logging_config import configure_logging
|
|
from app.config import settings
|
|
from app.workers.image_worker import WorkerSettings
|
|
|
|
|
|
def main():
|
|
configure_logging(debug=settings.DEBUG)
|
|
logger = logging.getLogger("worker")
|
|
logger.info("Starting Imago worker on queue '%s'", WorkerSettings.queue_name)
|
|
|
|
run_worker(WorkerSettings)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|