花不显示任务事件

时间:2017-12-04 13:26:33

标签: python python-3.x celery flower

Here我找到了如何向Flower发送事件。接下来,我尝试在github issue中的代码中使用它。我的版本:

@celery.task()
def add():
    try:
        ...
    except Exception as exc:
        add.send_event('task-failed', exception=str(exc))

如果出现错误,Flower会收到有关失败任务的信息:

Flower's dashboard

但是当我尝试点击并找到关于它的额外信息时,我看到:

Information about failed tasks

我应该如何使用send_event

2 个答案:

答案 0 :(得分:0)

可能的解决方案:

send_event使用task.request.id将事件发布到Flower中。如果将此id替换为另一个,则在Flower中将有两个关于一个任务的记录。但需要为这些记录使用不同的ID。功能示例:

def send_to_flower(task, event, **kwargs):
    task.request.id = str(uuid4())
    task.send_event(event, **kwargs)

答案 1 :(得分:0)

您搜索错误的状态。您应该搜索state:FAILED而不是state:FAILURE