简体   繁体   English

根据安慰队列中的安慰事件触发气流任务

[英]Trigger Airflow task based on solace events from solace queue

I have just started learning airflow...!!我刚刚开始学习气流......!

I need to create DAG which contains task to listen to events from solace queue, There could be multiple events that task is going to listen based on event(message) it should pass to next task.我需要创建包含任务的 DAG 以侦听来自安慰队列的事件,任务可能会根据事件(消息)侦听多个事件,它应该传递给下一个任务。

在此处输入图片说明

Once Event listener listen event E1 then it should trigger "Event E1" task and it would start listening to next event.一旦事件侦听器侦听事件 E1,它就会触发“事件 E1”任务并开始侦听下一个事件。

在此处输入图片说明

Same goes for other Events(tasks), once listener receive all events then it should turn green(succeed).其他事件(任务)也是如此,一旦侦听器收到所有事件,它就会变成绿色(成功)。

在此处输入图片说明

I know on the basis of event we can trigger next job by branching, but how we can make sure first task is running until all events are received?我知道基于事件我们可以通过分支触发下一个工作,但是我们如何确保第一个任务正在运行直到收到所有事件?

I haven't tested it, but this should give you the structure you're looking for I believe.我还没有测试过它,但是我相信这应该会给你你正在寻找的结构。

# wait_eN = Your event waiting tasks
# work_eN = Your event working tasks

wait_e1 >> (wait_e2, work_e1)
wait_e2 >> (wait_e3, work_e2)
wait_e3 >> work_e3

We have developed solace event listener which listen event from solace queue and create event Json file.我们开发了 solace 事件监听器,它从 solace 队列中监听事件并创建事件 Json 文件。 From Airflow we have implemented sensor operator with reschedule on.在 Airflow 中,我们实现了重新调度的传感器操作符。 With this approach we are able to meet our requirements.通过这种方法,我们能够满足我们的要求。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM