Ann*_*wan 6 python python-2.x celery python-2.7 celery-task
芹菜3.0
经纪人= RabbitMQ
任务已经被确认并开始处理,并且具有state=STARTED
。然后,我想重新启动工作程序(以将工作程序更新为较新的版本)。重新启动worker(使用supervisorctl restart
)后,那些长时间运行的任务将全部终止。但是他们的状态仍然在state=STARTED
。如何将其状态更新为FAILURE
其他值?(而且,我不希望在工作程序重新启动后再次执行这些任务。)
track_started=True
---如果使用此选项,则state=STARTED
在工作线程重新启动后,任务将保留在此处。如果没有此选项,则state=PENDING
在工作程序重新启动后,任务将保留。CELERY_ACKS_LATE=True
--- state=STARTED
工作重新启动后,任务将保留在。并且再次执行任务,而不是期望的行为。signal(SIGTERM, handler)
和处理程序函数来捕获信号。可以成功输入处理程序。但是,无论我将什么内容放入处理程序中,都无法更改任务的状态。状态保持不变,不会更改为FAILURE
。在我尝试过的处理程序中
raise Exception
exit(0)
exit(1)
Celery是否有任何设置可以使其跟踪正在关闭的任务状态?
归档时间: |
|
查看次数: |
194 次 |
最近记录: |