Observed since 20 Oct, 17:55 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Custom OpenLineage extractors for Acceldata integrations
Custom OpenLineage extractors for Acceldata. Adds a dbtCloud run facet to
DbtCloudRunJobOperator lineage events so ADOC can link Airflow tasks to dbt Cloud
runs (InterPipelineRunLink).
By default, the extractor also delegates to Airflow's built-in dbt Cloud OpenLineage integration. If the Acceldata dbt Cloud Data Source connector already collects detailed dbt lineage, you can disable that delegation (see below).
OpenLineage must already be enabled in Airflow, plus:
| Component | Notes |
|---|---|
| Apache Airflow | 2.10+ |
apache-airflow-providers-openlineage | Custom extractors |
apache-airflow-providers-dbt-cloud | DbtCloudRunJobOperator |
Install on workers, scheduler, and triggerer (if used):
pip install acceldata-openlineage==1.1.0
Restart Airflow processes after install.
Append to existing extractors (semicolon-separated); do not replace the full list unless intended:
# airflow.cfg
[openlineage]
extractors = acceldata_openlineage.extractors.dbt.dbt_cloud.DbtCloudRunJobOperatorExtractor
Or via environment variable:
AIRFLOW__OPENLINEAGE__EXTRACTORS=acceldata_openlineage.extractors.dbt.dbt_cloud.DbtCloudRunJobOperatorExtractor
Composer: add the package under PyPI packages, set
AIRFLOW__OPENLINEAGE__EXTRACTORS under Environment variables, then apply
the environment update.
| Field | Value |
|---|---|
| Conn Id | Same as dbt_cloud_conn_id (default: dbt_cloud_default) |
| Login | dbt Cloud Account ID |
| Password | dbt Cloud API token |
If account_id is unset on the operator, dbtCloudAccountId is taken from the
connection login.
Run a DbtCloudRunJobOperator task and check logs for Attached dbtCloud facet.
On COMPLETE / FAIL the facet should include dbtCloudRunId, dbtCloudJobId, and
dbtCloudAccountId.
1.1.0+. The setting dbt_cloud_lineage_extraction_enabled controls whether
the extractor delegates to Airflow's built-in dbt Cloud OpenLineage methods
(get_openlineage_facets_on_*).
| Value | Behavior |
|---|---|
true (default) | Built-in extraction runs (same as prior releases). |
false | Built-in extraction is skipped. Task-level events and the dbtCloud facet are still emitted. |
Set to false when the Acceldata dbt Cloud Data Source connector already
collects model/test/dataset lineage in ADOC and you only need orchestration
lineage plus the dbtCloud linking facet from Airflow.
[openlineage]
dbt_cloud_lineage_extraction_enabled = false
AIRFLOW__OPENLINEAGE__DBT_CLOUD_LINEAGE_EXTRACTION_ENABLED=false
Restart scheduler and workers after changing this.
Note: built-in extraction also requires wait_for_termination=True on the
operator. With wait_for_termination=False, artifact extraction is already a
no-op regardless of this flag.
dbtCloud facet| Field | Source |
|---|---|
dbtCloudRunId | operator.run_id |
dbtCloudJobId | operator.job_id |
dbtCloudAccountId | operator.account_id, or connection login |
Present on COMPLETE / FAIL once run_id is set (START only if the run was reused).
run_id.dbtCloudAccountId — set account_id on the operator or Account ID
in the connection login.wait_for_termination=True to test; with False,
built-in extraction never runs anyway.KeyError: 'host', catalog.json
404) — set dbt_cloud_lineage_extraction_enabled = false.Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 1.1.0 | 3 Sept 2026 | 8 |
This describes our collected data; it is not a security assessment.
Observed since 20 Oct, 17:55 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:04f821e0e1c17792c5d157ff568aa4029ccdd65bd4c4ad73063421ad45ee8130