django-celery-beat不向芹菜工作者发送任务

最后发布: 2017-12-21 10:42:13


问题

我首先只在Django中使用芹菜。

这是我的配置,

from __future__ import absolute_import

import os
from celery import Celery
from celery.schedules import crontab


 os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'inventory.settings')
 app = Celery('inventory')

 app.config_from_object('django.conf:settings', namespace='CELERY')
 #app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)
 app.autodiscover_tasks()

 app.conf.beat_schedule = {
    'send-report-every-single-minute': {
        'task': 'db.tasks.send_daily_report',
        'schedule': crontab(minute='*/1'),
     },
 }

然后我跑了芹菜工人,殴打了,这项工作奏效了。

celery -A inventory worker -l info
celery -A inventory beat -l info

但是现在,我正在使用django-celery-beat软件包。

我在django管理面板中添加了日程表,并启用了相同的任务。 但是,它不会将任务发送给芹菜工人。 工人一直在等待。 开始时卡住了

它也没有显示我手动运行节拍时安排的任务,

$ celery -A inventory beat -l debug

[2017-12-21 16:10:48,471: INFO/MainProcess] beat: Starting...
[2017-12-21 16:10:48,527: DEBUG/MainProcess] Current schedule:

[2017-12-21 16:10:48,527: DEBUG/MainProcess] beat: Ticking with max interval->5.00 minutes
[2017-12-21 16:10:48,528: DEBUG/MainProcess] beat: Waking up in 5.00 minutes.

请参阅“ Current Schedule行下方,它只显示一个空行。

仅当我通过Django管理面板添加任务计划时才会发生。

它也没有在Django管理面板中显示芹菜清理任务。

python django celery celerybeat