Je trouve que celerybeat utilise l'heure UTC dans sa programmation (et envoie des journaux au Royaume-Uni?!) Même si je crois avoir les paramètres requis dans mes paramètres django.py:celerybeat utilise UTC même avec les paramètres de fuseau horaire
TIME_ZONE = 'UTC'
USE_TZ = True
CELERY_ENABLE_UTC = True
CELERY_TIMEZONE = 'Australia/Sydney'
CELERYBEAT_SCHEDULE =
"testRunBeat" : {
"task" : "experiments.tasks.testHeartBeat",
"schedule" : crontab(minute = "*/1", hour="13-14"),
}
J'ai essayé la commutation variable TIME_ZONE sans chance
J'utilise:
django==1.4
celery==2.5.5
django-celery==2.5.5
Merci
Salut. Le doc dit: "Si les dates et heures activées _in messages_" - Je ne suis pas sûr exactement quelle est la portée de cela, mais cela ne signifie pas nécessairement que les entrées de crontab pour celerybeat sont en UTC. Aussi bien [ici] (http://docs.celeryproject.org/en/latest/userguide/periodic-tasks.html#beat-entries) les docs disent: "Par défaut le fuseau horaire local actuel est utilisé, mais vous pouvez aussi définissez un fuseau horaire spécifique en activant le paramètre CELERY_ENABLE_UTC et en configurant le paramètre CELERY_TIMEZONE "avec un exemple, ce qui implique que vous devez activer UTC pour _any_ timezone spécifié. – Taras
La documentation peut être manquante ou trompeuse, mais je sais que cela a fonctionné pour moi. J'ai récemment passé de 2.4.x à 3.0.x et toutes mes entrées crontab sont passées de l'heure locale à l'UTC. Une fois que j'ai défini CELERY_ENABLE_UTC = False, toutes mes entrées crontab sont revenues à l'heure locale. –
Mon installation de django actuelle a le fuseau horaire défini sur UTC, donc mon problème est que je ne peux pas m'éloigner de l'UTC (j'essaie d'obtenir les entrées de crontab à l'horaire de l'Australie/Sydney). Je vais regarder de plus près .. – Taras