Chr*_*s R 5 python logging message-queue task celery
我想将我自己开发的任务队列系统转换为基于Celery的任务队列,但我目前拥有的一个功能让我有些困扰.
现在,我的任务队列操作非常粗糙; 我运行该作业(生成数据并将其上传到另一台服务器),使用Nose日志捕获库中的变量收集日志记录,然后将该任务的日志记录存储为应用程序数据库中的详细结果记录.
我想把它分解为三个任务:
这里真正的踢球者是日志记录集合.现在,使用日志捕获,我在数据生成和上载过程中为每个日志调用提供了一系列日志记录.这些是诊断目的所必需的.鉴于任务甚至不能保证在同一个进程中运行,我不清楚如何在Celery任务队列中完成此任务.
我对这个问题的理想解决方案将是一个简单且理想的微创方法,在前任任务(1,2)中捕获所有日志记录并使其可用于报告任务(3)
我最好还是保持相当粗糙的任务定义,并将所有这些工作放在一个任务中?或者有没有办法传递现有的捕获日志记录,以便在最后收集它?
听起来某种“观察者”是理想的选择。如果您可以将日志作为流来观看和使用,那么您可以在结果进入时获取结果。由于观察者将单独运行,因此对于它正在观看的内容没有依赖性,我相信这将满足您对非-侵入性解决方案。
| 归档时间: |
|
| 查看次数: |
1021 次 |
| 最近记录: |