0
我有一个我用Heroku部署的Django应用程序。我试图用芹菜来每分钟创建一个定期任务。然而,当我观察日志使用以下命令工人:Django芹菜周期性任务没有运行(Heroku)?
heroku logs -t -p worker
我没有看到正在执行我的任务。也许我错过了一个步骤?这是我下面的配置...
Procfile
web: gunicorn activiist.wsgi --log-file -
worker: celery worker --app=trending.tasks.app
Tasks.py
import celery
app = celery.Celery('activiist')
import os
from celery.schedules import crontab
from celery.task import periodic_task
from django.conf import settings
app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)
app.conf.update(BROKER_URL=os.environ['REDIS_URL'],
CELERY_RESULT_BACKEND=os.environ['REDIS_URL'])
os.environ['DJANGO_SETTINGS_MODULE'] = 'activiist.settings'
from trending.views import *
@periodic_task(run_every=crontab())
def add():
getarticles(30)
有一点要补充。当我使用python shell和“delay()”命令运行任务时,任务确实运行(它显示在日志中) - 但它只运行一次并且仅在执行时运行。