在我的Flask项目中,我使用MongoDB作为Celery任务的代理,也作为任务结果的存储:
CELERY_BROKER_URL = 'mongodb://10.10.10.110:27017/production'
CELERY_RESULT_BACKEND = 'mongodb://10.10.10.10:27017/'
CELERY_MONGODB_BACKEND_SETTINGS = {
'database': 'production',
'taskmeta_collection': 'celery_tasks',
}
但是当我从celery_tasks
集合查询结果时,我注意到它会自动删除旧结果,并且只显示过去两天的结果。
是否有任何其他配置为任务结果定义TTL,如何防止芹菜删除旧结果?
答案 0 :(得分:2)
设置result_expires=0
值为None或0表示结果永不过期(取决于后端规范)。
http://docs.celeryproject.org/en/latest/userguide/configuration.html#result-expires