{% extends base_template %} {% block content %}
@rmq_trigger
Airflow connection ID pointing to the RabbitMQ instance.
0 = trigger DAG immediately on each message. >0 = trigger once after this many seconds; all messages within the window are ACKed.
Optional message filter in format {"filter_headers": {"key": "value"}}. Leave empty to trigger on any message.
{"filter_headers": {"key": "value"}}
{% if is_dag_file %} Set in the DAG file — @rmq_trigger(ack_unmatched=True). {% else %} A message this subscription's filter rejects is acknowledged and gone instead of being returned to the queue. Dead-lettering does not apply to an acknowledgement, so the message simply disappears — turn this on only for a queue this subscription owns. {% if group_subs and group_subs | length > 1 %} The box stands for the whole group: it is on only when every queue in the group acknowledges, and saving writes it to every row. {% if ack_unmatched_mixed %} The rows disagree today, and the Subscriptions page shows the group as acknowledging because at least one of its queues does. Saving levels the whole group to what you see here — {% if ack_unmatched_checked %} the box is ticked, so the save switches permanent deletion on for every queue in the group, including the ones running without it today. Untick it unless every queue may lose the messages its filter rejects. {% else %} the box is off, so the save switches deletion off everywhere and cannot turn it on for a queue that runs without it. Tick it only if every queue in the group may lose the messages its filter rejects. {% endif %} {% endif %} {% endif %} {% endif %}
@rmq_trigger(ack_unmatched=True)