Як запланувати завдання з селера що працює 1-го числа кожного місяця?
Відповіді:
11 за відповідь № 1Починаючи з Celery 3.0, розклад crontab тепер підтримується day_of_month
і month_of_year
аргументи: http://docs.celeryproject.org/en/latest/userguide/periodic-tasks.html#crontab-schedules
1 для відповіді № 2
Ви можете зробити це за допомогою Графіки Crontab і ви визначите це або:
- у вашому джанго settings.py:
from celery.schedules import crontab
CELERYBEAT_SCHEDULE = {
"my_periodic_task": {
"task": "my_app.tasks.my_periodic_task",
"schedule": crontab(0, 0, day_of_month="1"), # Execute on the first day of every month.
},
}
- в celery.py config:
from celery import Celery
from celery.schedules import crontab
app = Celery("app_name")
app.conf.beat_schedule = {
"my_periodic_task": {
"task": "my_app.tasks.my_periodic_task",
"schedule": crontab(0, 0, day_of_month="1"), # Execute on the first day of every month.
},
}