我正在构建一个用于在Celery框架之上执行任务的框架。Celery任务历史
我想看到的最近执行的任务的列表(最近2-7天)。
找上了API我可以找到app.backend
对象,但无法弄清楚如何使查询获取任务。
例如,我可以像使用Redis的或后端数据库。我不想显式地将SQL查询写入数据库。
有没有办法与API任务历史/结果工作?
我试图用花,但它只能处理事件和其开始之前无法获得的历史。
我正在构建一个用于在Celery框架之上执行任务的框架。Celery任务历史
我想看到的最近执行的任务的列表(最近2-7天)。
找上了API我可以找到app.backend
对象,但无法弄清楚如何使查询获取任务。
例如,我可以像使用Redis的或后端数据库。我不想显式地将SQL查询写入数据库。
有没有办法与API任务历史/结果工作?
我试图用花,但它只能处理事件和其开始之前无法获得的历史。
您需要将任务结果保留在后端,例如Redis。芹菜文件包含有关如何做到这一点这里的信息:
http://docs.celeryproject.org/en/latest/getting-started/first-steps-with-celery.html#keeping-results
而且你要设置的CELERY_TASK_RESULT_EXPIRES配置参数,因为默认情况下,结果在一天后丢弃。
如果你这样做,那么花会告诉你任务执行的从什么时候开始的历史,irregardless。
可以使用的persisent选项,如:flower -A ctq.celery --persistent=True
这是为什么倒投了?这似乎是合理的。谁投下了票请澄清,因为我想知道为什么这是一个坏主意。 – digitaldavenyc
这是个不错的主意。因为我用中文而投下了票! 23333 –
退房Django的芹菜,我认为它已经提供了任务 – Ale
管理员看来你可能是正确的。我不想在这个项目中使用django,但它可能需要djcelery提供的相同功能。 – baldr