Airflow
Core pluginmarmotdata/airflow
Ingest metadata from Apache Airflow including DAGs, tasks, and dataset lineage
The Airflow plugin ingests metadata from Apache Airflow, including DAGs (Directed Acyclic Graphs), tasks, and dataset lineage. It connects to Airflow's REST API to discover your orchestration layer and track data dependencies through Airflow's native Dataset feature.
Prerequisites
- Airflow 2.0+ for basic DAG and task discovery
- Airflow 2.4+ for Dataset-based lineage tracking
- REST API enabled with authentication configured
The plugin supports two authentication methods:
- Basic Auth: Username and password
- API Token: For token-based authentication
Configure authentication in your Airflow instance via airflow.cfg:
[api]
auth_backends = airflow.api.auth.backend.basic_auth
In the UI
Point-and-click, no config file needed.
- 1 Open
Runs→Create Pipeline - 2 Pick Airflow from the plugin list.
- 3 Fill in the wizard, set a schedule, save.
With the CLI
Save a YAML config, then run marmot ingest.
name: my-airflow-pipeline
runs:
- airflow:
host: "<host>"marmot ingest -c ingest.yaml Not using plugins? Other ways to populate Marmot
Configuration
13 top-level fields.
tags multiselect Tags to apply to discovered assets
external_links object[] External links to show on all assets
name string Display name for the link
icon string Icon identifier for the link
url string URL to the external resource
filter object Filter discovered assets by name (regex)
include multiselect Include patterns for resource names (regex)
exclude multiselect Exclude patterns for resource names (regex)
host string Airflow webserver URL (e.g., http://localhost:8080)
username string Username for basic authentication
password password Password for basic authentication
api_token password API token for authentication (alternative to basic auth)
discover_dags bool Discover Airflow DAGs as Pipeline assets
true discover_tasks bool Discover tasks within DAGs
true discover_datasets bool Discover Airflow Datasets for lineage (requires Airflow 2.4+)
true include_run_history bool Include DAG run history in metadata
true run_history_days int Number of days of run history to fetch
7 only_active bool Only discover active (unpaused) DAGs
true Assets Emitted
Metadata fields this plugin attaches to each discovered asset.
Airflow DAG
AirflowDAGFieldsAirflowDAGFields describes the metadata fields Airflow emits for a DAG (Pipeline) asset. It is kept as a documentation-only struct so downstream tooling can introspect the shape of the metadata map.
dag_id stringUnique DAG identifier
description stringDAG description
file_path stringPath to DAG definition file
schedule_interval stringDAG schedule (cron expression or preset)
is_paused boolWhether DAG is paused
is_active boolWhether DAG is active
owners stringDAG owners (comma-separated)
last_run_state stringState of the last DAG run (success, failed, running)
last_run_id stringID of the last DAG run
last_run_date stringExecution date of the last DAG run
next_run_date stringNext scheduled run date
last_parsed_time stringLast time the DAG file was parsed
success_rate floatSuccess rate percentage over the lookback period
run_count intNumber of runs in the lookback period
Airflow Task
AirflowTaskFieldsAirflowTaskFields describes the metadata fields for a Task asset.
task_id stringTask identifier within the DAG
dag_id stringParent DAG ID
operator_name stringAirflow operator class name (e.g., BashOperator, PythonOperator)
trigger_rule stringTask trigger rule (e.g., all_success, one_success)
retries intNumber of retries configured for the task
pool stringExecution pool for the task
downstream_tasks string[]List of downstream task IDs
Airflow Dataset
AirflowDatasetFieldsAirflowDatasetFields describes the metadata fields for a Dataset asset.
uri stringDataset URI identifier
created_at stringDataset creation timestamp
updated_at stringDataset last update timestamp
producer_count intNumber of tasks that produce this dataset
consumer_count intNumber of DAGs that consume this dataset
Airflow DAG Run
AirflowDAGRunFieldsAirflowDAGRunFields describes the run facet fields emitted for DAG run history events.
dag_run_id stringUnique identifier for the DAG run
state stringRun state (queued, running, success, failed)
execution_date stringLogical execution date
start_date stringActual start time of the run
end_date stringEnd time of the run
run_type stringType of run (scheduled, manual, backfill)