{% extends base_template %} {% block content %}
{# Flash messages #} {% with messages = get_flashed_messages(with_categories=true) %} {% for category, message in messages %}
{{ message }}
{% endfor %} {% endwith %} {% if is_dag_file %}
This subscription is defined in a DAG file via @rmq_trigger. Only the Enabled toggle can be changed here. To modify other fields, update the DAG file.
{% endif %}
{# Queue(s) — dynamic list for create/group-edit, single field for single-sub edit #} {% if group_subs %} {# Group edit: show all queues with remove buttons #}
{% for gs in group_subs %}
{% if not is_dag_file %} {% endif %}
{% endfor %}
{% elif not sub %} {# Create: start with one queue, allow adding more #}
{% else %} {# Single-sub edit: single queue field #}
{% endif %} {% if not is_dag_file and (not sub or group_subs) %} {# Show "+ Add queue" button in create mode and group-edit mode #}
{% endif %}

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.

{% 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 %}

Cancel
{% if not is_dag_file %} {% endif %} {% endblock %}