Как я планирую задачу с Celery, которая работает 1-го числа каждого месяца?

Как назначить задачу с , который работает 1-го числа каждого месяца?

Ответ 2

Вы можете сделать это, используя расписание Crontab, и вы также определите это:

  • в вашем django 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.
    },
}