0

我将 Celery 放在我的 Django 应用程序中,以便其他两个 python 程序可以通过执行 subprocess 方法处理来自我的 Django 应用程序的输入。我的问题是如何访问子流程的输出?那时我只制作了一个 python 程序,我通过 stdout 和 stderr 访问日志文件(两个应用程序的输出)。当我在 Django 中使用 Celery 时,这是否相同?(如果我应该在这里分配我的 Django 应用程序的数据库)的值CELERY_RESULT_BACKEND是否受日志文件的影响?

到目前为止,我所做的是:

  1. 通过我的 tasks.py 中的子进程访问这两个应用程序

  2. 我现在为 CELERY_RESULT_BACKEND 分配了我的经纪人的数据库 Redis 作为我的数据库。我的计划是获取日志文件,然后将它们保存到我的 Django 应用程序的数据库中,以便我可以访问该数据库。

你能提供一些帮助吗?

4

1 回答 1

0

通常,您只关心任务结果,即 celery 任务的返回值,并且result_backend至少会在您的内存中存储一result_expires​​段时间(通常为 1 天)。因此,如果您想访问任何特定任务的结果,您只需使用任务 ID 即可。

于 2017-01-13T17:59:14.273 回答