Messaging Triggers

Wait for a message in a queue

Use the MessageQueueTrigger to wait for a message in a queue. Parameters of the trigger are:

  • queue - the queue identifier

Additional parameters can be provided depending on the queue provider.

The example below shows how to schedule a DAG using MessageQueueTrigger.

common/messaging/tests/system/common/messaging/example_message_queue_trigger.py

trigger = MessageQueueTrigger(queue="https://sqs.us-east-1.amazonaws.com/0123456789/my-queue")
asset = Asset("sqs_asset", watchers=[AssetWatcher(name="sqs_asset_watcher", trigger=trigger)])

with DAG(
    dag_id="example_msgq_watcher",
    schedule=[asset],
    catchup=False,
):
    EmptyOperator(task_id="task")

Was this entry helpful?