我刚刚开始使用芹菜,试图运行一个周期性任务。
已配置的*rabbitmq**增加了celeryconfig.py。
并在tasks.py中添加了以下代码:
from celery.decorators import periodic_task
from datetime import timedelta
@periodic_task(run_every=timedelta(seconds=2))
def every_2_seconds():
print("Running periodic task!")现在,当我通过在终端中键入" celerybeat“启动celerybeat时,它开始运行并显示以下消息
celerybeat
celerybeat v3.0.3 (Chiastic Slide) is starting.
__ - ... __ - _
Configuration ->
. broker -> amqp://arnold@localhost:5672//
. loader -> celery.loaders.default.Loader
. scheduler -> celery.beat.PersistentScheduler
. db -> celerybeat-schedule
. logfile -> [stderr]@INFO
. maxinterval -> now (0s)
[2012-08-03 14:24:52,202: INFO/MainProcess] Celerybeat: Starting...而且在终端中没有every_2_seconds方法的输出。我假设我必须指定要运行哪个应用程序或在celerybeat command.How期间运行哪个任务才能做到这一点?
如何指定任务并将每隔2秒打印一行作为定期任务?
谢谢。
发布于 2012-08-03 17:03:02
将CELERY_IMPORTS=("tasks",)添加到您的celeryconfig.py中,然后运行celerybeat。
https://stackoverflow.com/questions/11792101
复制相似问题