Django 芹菜任务更新
我正在调查芹菜在长时间运行任务方面的功能,用户希望观察进度。该应用程序基于Django,任务通过RPC启动,并涉及将数据库与文件系统上的文件同步 在任务中,我希望登录到几个级别(警告、错误、信息等),我还希望用户根据日志级别过滤消息,因此我想登录到我的数据库是可行的 我的问题是:Django 芹菜任务更新,django,celery,Django,Celery,我正在调查芹菜在长时间运行任务方面的功能,用户希望观察进度。该应用程序基于Django,任务通过RPC启动,并涉及将数据库与文件系统上的文件同步 在任务中,我希望登录到几个级别(警告、错误、信息等),我还希望用户根据日志级别过滤消息,因此我想登录到我的数据库是可行的 我的问题是: 是否建议登录到Django应用程序使用的同一数据库 如何设置芹菜以使用Pythons标准日志模块登录数据库 为什么不用当前状态更新任务,并使用任务id进行查询。这样,您就可以透明地使用已配置的后端,而不是重载数据库
- 是否建议登录到Django应用程序使用的同一数据库
- 如何设置芹菜以使用Pythons标准日志模块登录数据库
result = YourTaskObject.AsyncResult(task_id=task_id)
if not result.ready():
progress = result.result.percent_done
else:
...
您的方法肯定很有趣,因为它不涉及任何数据库/文件,只需要后端。我将进一步调查它。它使用您配置的任何后端。这可能是您的数据库,也可能是rabbitmq、redis或mongodb。
result = YourTaskObject.AsyncResult(task_id=task_id)
if not result.ready():
progress = result.result.percent_done
else:
...