OpenLineage dbt integration
Wrapper script for automatic metadata collection from dbt
Features
Metadata
- Model run lifecycle
- Model inputs / outputs
Requirements
Right now, openlineage-dbt supports only these dbt adapters:
bigquerysnowflakespark(thriftandodbc, but notlocal)redshiftathenagluepostgresclickhousetrinodatabrickssqlserverfabric(Microsoft Fabric Warehouse)dremioduckdb
Installation
$ pip3 install openlineage-dbt
To install from source, run:
$ pip install .
Configuration
Transport
openlineage-dbt uses the OpenLineage Python client to push data to the OpenLineage backend, so any way of configuring Python client will work here as well:
OPENLINEAGE_URL=http://localhost:5000
OPENLINEAGE_API_KEY=abc
dbt integration-specific environment variables:
OPENLINEAGE_NAMESPACE- set if you are using something other than thedefaultnamespace for job namespace.
Logging
In addition to conventional logging approaches, the OpenLineage dbt wrapper script provides an alternative way of configuring its logging behavior. By setting the OPENLINEAGE_DBT_LOGGING environment variable, you can establish the logging level for the openlineage.dbt and its child modules.
You can also set log level of dbtol Python module but this is deprecated.
Usage
To begin collecting dbt metadata with OpenLineage, replace dbt run with dbt-ol run.
Additional table and column level metadata will be available if catalog.json, a result of running dbt docs generate, will be found in the target directory.
If you need to send events without running the job you can use the command dbt-ol send-events, it will send the metadata of your last run without running the job.
Development
For development setup instructions, see the Python development setup guide.
Quick start:
# From the repository root (requires https://taskfile.dev)
$ task integrations:dbt:setup
# Or manually
$ cd integration/dbt
$ uv sync --extra dev
SPDX-License-Identifier: Apache-2.0
Copyright 2018-2026 contributors to the OpenLineage project
Release files for openlineage-dbt 1.53.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| openlineage_dbt-1.53.0-py3-none-any.whl | Python 3 | none | any | Details |
Release files / openlineage_dbt-1.53.0-py3-none-any.whl
| Download URL | openlineage_dbt-1.53.0-py3-none-any.whl |
|---|---|
| Size | 6.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c747ccc5b0b160a3e18c0365778030ebc1ad1fcf0fc5a8685330da8ac9493fd2
|
|
BLAKE2b-256 checksum How to use checksums |
242e910ffdb214cdc0a08b661299b211d04c381a2ffb847834853ef4b7e9edcd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.21
|