Acceldata OpenLineage
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).
Prerequisites
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
Install on workers, scheduler, and triggerer (if used):
pip install acceldata-openlineage==1.1.0
Restart Airflow processes after install.
Setup
1. Register the extractor
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.
2. dbt Cloud connection
| 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.
3. Verify
Run a DbtCloudRunJobOperator task and check logs for Attached dbtCloud facet.
On COMPLETE / FAIL the facet should include dbtCloudRunId, dbtCloudJobId, and
dbtCloudAccountId.
Built-in dbt artifact extraction (optional)
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).
Troubleshooting
- No facet — confirm the extractor path in config, package on the worker, and
task reached COMPLETE / FAIL with a
run_id. - Missing
dbtCloudAccountId— setaccount_idon the operator or Account ID in the connection login. - Flag has no effect — set
wait_for_termination=Trueto test; withFalse, built-in extraction never runs anyway. - Duplicate lineage or upstream errors (
KeyError: 'host',catalog.json404) — setdbt_cloud_lineage_extraction_enabled = false.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file acceldata_openlineage-1.1.0.tar.gz.
File metadata
- Download URL: acceldata_openlineage-1.1.0.tar.gz
- Upload date:
- Size: 7.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8beff5b9f37e08d2e901da4180e3af91e8c0faf3784cde3c1e625cbb66697b87
|
|
| MD5 |
dcdcf4b9a03e818623da00476419b10c
|
|
| BLAKE2b-256 |
9c11c1cdba1701e69c78bb00563a9d22aba30fe94d6622e9acd050cde30f20b6
|
File details
Details for the file acceldata_openlineage-1.1.0-py3-none-any.whl.
File metadata
- Download URL: acceldata_openlineage-1.1.0-py3-none-any.whl
- Upload date:
- Size: 7.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7f7a9bb99ceb53fe4eb028b83603d6720758da148244706ff7490551ffe86b13
|
|
| MD5 |
8076482110214dde4685594589599401
|
|
| BLAKE2b-256 |
e8389423d957df55004b547b5dfd277ff03c1a5dd6842b16ee4538547aeb45ea
|