Celery共享任务未重试,并提供“任务可以重试”

时间:2018-08-09 16:00:01

标签: python celery django-celery

我一直在搜索,但是找不到满意的答案。

我正在使用Celery v4.1.0和python 2.7.12。

我在CELERYBEAT_SCHEDULE中有一个共享任务定义为周期任务:

@shared_task(max_retries=5)
def test_task_retry():
    num_retries = test_task_retry.request.retries
    seconds_to_wait = 2.0 ** num_retries
    raise test_task_retry.retry(countdown=seconds_to_wait)

CELERYBEAT_SCHEDULE = {
    'test_task_retry': {
        'task': 'app.tasks.test_task_retry',
        'schedule': crontab(hour=15, minute=00),
    },
}

发生异常时,我只会看到“可以重试任务”,但从未真正重试过任务。

我在某处读到它可能是因为没有task_id。如何定义task_id?

此外,此模式在我所有不是计划任务的共享任务中也能很好地工作。

最好

0 个答案:

没有答案