Skip to main content

dbt plugin that emits OpenLineage events with test results for automated incident correlation

Project description

🔗 dbt-correlator

Accelerate dbt incident resolution with automated correlation

PyPI version codecov Python Version License


What It Does

Eliminates manual detective work when dbt tests fail:

  • Automatically links test failures to the job runs that caused them
  • Provides direct navigation from incident to root cause
  • Eliminates context switching across multiple tools
  • Works with your existing OpenLineage infrastructure

Quick Start

# Install
pip install correlator-dbt

# Configure endpoint
export CORRELATOR_ENDPOINT=http://localhost:8080/api/v1/lineage/events

# Run dbt tests with correlation
cd your-dbt-project
dbt-correlator test

# Or run dbt models with lineage tracking
dbt-correlator run

# Or run dbt build (models + tests combined)
dbt-correlator build

That's it. Your test results and lineage are now being correlated.


How It Works

dbt-correlator wraps dbt commands and emits OpenLineage events with lineage and test results:

  1. START - Emits job start event
  2. Execute - Runs dbt test, dbt run, or dbt build
  3. Parse - Extracts results from dbt artifacts
  4. Emit - Sends lineage + test events in single batch HTTP POST
  5. COMPLETE/FAIL - Emits job completion event

See Architecture for technical details.


Why It Matters

The Problem: When dbt tests fail, teams spend significant time manually hunting through logs, lineage graphs, and job histories to find the root cause.

What You Get: Stop the manual detective work. dbt-correlator automatically connects your dbt test failures to their root cause, putting you in control of incidents instead of reacting to them.

Key Benefits:

  • Faster incident resolution: Automated correlation reduces time spent investigating
  • Eliminate tool switching: One correlation view instead of navigating multiple dashboards
  • Instant root cause: Direct path from test failure to problematic job run
  • Zero-friction setup: Add one command after dbt test

Built on Standards: Uses OpenLineage, the industry standard for data lineage. No vendor lock-in, no proprietary formats.

What Makes This Different: dbt-correlator is purpose-built for incident correlation, not just lineage tracking. It's optimized for faster execution and designed to grow with your dbt workflows as your needs evolve.


Versioning

This package follows Semantic Versioning with the following guidelines:

  • 0.x.y versions (e.g., 0.1.0, 0.2.0) indicate initial development phase:

    • The API is not yet stable and may change between minor versions
    • Features may be added, modified, or removed without major version changes
    • Not recommended for production-critical systems without pinned versions
  • 1.0.0 and above will indicate a stable API with semantic versioning guarantees:

    • MAJOR version for incompatible API changes
    • MINOR version for backwards-compatible functionality additions
    • PATCH version for backwards-compatible bug fixes

The current version is in early development stage, so expect possible API changes until the 1.0.0 release.


Documentation

For detailed usage, configuration, and development:


Requirements

  • Python 3.9+
  • dbt-core 1.0+ (tested with dbt 1.10+)
  • Correlator

dbt Artifact Compatibility:

  • run_results.json: Schema v5+ (dbt 1.0+)
  • manifest.json: Schema v11+ (dbt 1.5+)

Links


License

Apache 2.0 - See LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

correlator_dbt-0.1.1.tar.gz (196.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

correlator_dbt-0.1.1-py3-none-any.whl (33.7 kB view details)

Uploaded Python 3

File details

Details for the file correlator_dbt-0.1.1.tar.gz.

File metadata

  • Download URL: correlator_dbt-0.1.1.tar.gz
  • Upload date:
  • Size: 196.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for correlator_dbt-0.1.1.tar.gz
Algorithm Hash digest
SHA256 bacdc57ae1f87c4f2c6439e8bf14f7eeb846db3290eacd577e232d4ea2b2a00a
MD5 fea368b9b05b0225250fa4b55416da1a
BLAKE2b-256 f50d3a4ea966727fdf894e5de4f9858e0b15005125d0b2af48a8177d93c37806

See more details on using hashes here.

File details

Details for the file correlator_dbt-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: correlator_dbt-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 33.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for correlator_dbt-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 41dd803c36b9cf7707891cb98439d0f06f0d55e4fec62bd6e703fada61f51550
MD5 5d81ba1139d7e3fa942603fbc25f1337
BLAKE2b-256 591e5aa01acc8da14a414cd20d24bb84ae7429b61a2818da8537a1225d7dc97f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page