This is an automated email from the ASF dual-hosted git repository.
o-nikolas pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/main by this push:
new 812c7d8d9b3 Stop presenting multi-team tagged metrics as an exhaustive
list (#71523)
812c7d8d9b3 is described below
commit 812c7d8d9b39155d0a04bfa4f6171642667bb10f
Author: Ramit Kataria <[email protected]>
AuthorDate: Thu Aug 13 13:47:28 2026 -0700
Stop presenting multi-team tagged metrics as an exhaustive list (#71523)
The list read as an authoritative enumeration of every metric carrying a
team_name tag, so it drifts out of date as metrics change and misleads
anyone
building dashboards or alerts from it. A stale entry naming a callback
failure
counter that is never emitted is the symptom that surfaced the problem.
Readers need to know which areas of Airflow carry the tag; the emission
sites
in the source are the right authority for individual metric names.
---
airflow-core/docs/core-concepts/multi-team.rst | 44 ++++++++++++++------------
1 file changed, 24 insertions(+), 20 deletions(-)
diff --git a/airflow-core/docs/core-concepts/multi-team.rst
b/airflow-core/docs/core-concepts/multi-team.rst
index 4a2a4c6e15c..6d6c8493e73 100644
--- a/airflow-core/docs/core-concepts/multi-team.rst
+++ b/airflow-core/docs/core-concepts/multi-team.rst
@@ -1063,26 +1063,24 @@ Dags, and global components emit the same metrics
without a ``team_name`` tag.
When Multi-Team mode is disabled, metrics are emitted with no
``team_name`` tag whatsoever, exactly
as they have always been emitted for a single-team Airflow environment.
-The ``team_name`` tag is applied to metrics across the following components:
-
-- **Triggerer**: heartbeat, capacity, blocked-main-thread, trigger-queue
delay, and trigger-outcome metrics
- (for example, ``triggerer_heartbeat``, ``triggers.running``,
``triggers.succeeded``,
- ``triggers.blocked_main_thread``, ``triggerer.trigger_queue_delay``).
-- **Executors**: executor slot gauges and scheduler-observed executor
heartbeat timing (for example,
- ``executor.open_slots``, ``executor.queued_tasks``,
``scheduler.executor_heartbeat_duration``).
-- **Scheduler**: pool slot gauges for team-scoped pools plus task- and
asset-scheduling counters (for
- example, ``pool.open_slots``, ``scheduler.tasks.killed_externally``,
``asset.triggered_dagruns``).
-- **Dag runs**: dag run timing and lifecycle metrics (for example,
``dagrun.duration.<state>``,
- ``dagrun.first_task_scheduling_delay``, ``dag.callback_exceptions``).
-- **Task instances**: task start, finish, and outcome counters (for example,
``ti.start``, ``ti.finish``,
- ``ti_successes``, ``ti_failures``).
-- **Dag processing**: per-file parsing and callback metrics (for example,
``dag_processing.processes``,
- ``dag_processing.processor_timeouts``,
``dag_processing.callback_only_count``).
-- **Callbacks**: callback execution counters (``callback_success`` /
``callback_failure``, optionally
- prefixed).
-- **Connection tests**: per-request worker and reaper metrics for team-owned
connection tests (for
- example, ``connection_test.success``, ``connection_test.failed``,
``connection_test.hook_duration``,
- ``connection_test.reaped``). Instance-wide connection-test queue gauges
remain untagged.
+The ``team_name`` tag is applied to metrics across the following components.
The metrics named are
+examples only, not a complete list:
+
+- **Triggerer**: heartbeat, capacity, blocked-main-thread, trigger-queue
delay, and trigger-outcome
+ metrics (``triggerer_heartbeat``, ``triggers.running``, etc.).
+- **Executors**: executor slot gauges and scheduler-observed executor
heartbeat timing
+ (``executor.open_slots``, ``executor.queued_tasks``, etc.).
+- **Scheduler**: pool slot gauges for team-scoped pools plus task- and
asset-scheduling counters
+ (``pool.open_slots``, ``scheduler.tasks.killed_externally``, etc.).
+- **Dag runs**: dag run timing and lifecycle metrics
(``dagrun.duration.<state>``,
+ ``dagrun.first_task_scheduling_delay``, etc.).
+- **Task instances**: task start, finish, and outcome counters (``ti.start``,
``ti.finish``, etc.).
+- **Dag processing**: per-file parsing and callback metrics
(``dag_processing.processes``,
+ ``dag_processing.processor_timeouts``, etc.).
+- **Callbacks**: callback execution counters (``callback_<state>``, optionally
prefixed).
+- **Connection tests**: per-request worker and reaper metrics for team-owned
connection tests
+ (``connection_test.success``, ``connection_test.failed``, etc.).
Instance-wide connection-test queue
+ gauges remain untagged.
.. note::
@@ -1091,6 +1089,12 @@ The ``team_name`` tag is applied to metrics across the
following components:
``executor.*`` slot gauges from the base executor. Check individual
provider change logs for the
minimum Airflow version that includes ``team_name`` tagging.
+.. note::
+
+ This list is not exhaustive and may lag behind the code. Use it to see
which areas of Airflow
+ carry the ``team_name`` tag; the metric emission sites in the Airflow
source are the
+ authoritative reference for individual metric names.
+
Important Considerations
------------------------