Documentation Index
Fetch the complete documentation index at: https://elementary-core-831-task-10-docs-update-elementary-oss-repo.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
For Elementary Cloud users: the recommended approach for pipeline performance monitoring is the automated
pipeline_task_performance monitor — see Performance Alerts. This page documents the manual dbt-test alternative using the Elementary dbt package.Overview
Elementary’s dbt package exposes themodel_run_results view, which contains run results for every dbt model enriched with model metadata. You can write dbt singular tests against this view to assert performance SLAs directly in your dbt project.
This approach requires no additional infrastructure — it runs as part of your existing dbt test invocations.
model_run_results schema
model_run_results is a view that joins dbt_run_results with dbt_models. Key columns:
| Column | Type | Description |
|---|---|---|
unique_id | string | dbt node unique ID |
alias | string | Model alias (table name) |
schema_name | string | Schema the model is materialized in |
execution_time | float | Execution duration in seconds |
status | string | Run status (success, error, etc.) |
invocation_id | string | dbt invocation ID |
generated_at | timestamp | When the run result was recorded |
Writing a performance SLA test
Create a singular test that queriesmodel_run_results and returns rows where execution time exceeds your threshold. A dbt singular test fails when any rows are returned.
tests/assert_model_performance_sla.sql
600) per model by parameterising the test or writing per-model singular tests.
Per-model SLA tests
To enforce different thresholds per model, write a separate singular test for each:tests/assert_orders_model_sla.sql
Alerts
Failures from these singular tests appear in Elementary’s alert pipeline alongside other dbt test failures. Use alert rules and tags/owners to route them to the right channel. Add a tag to the test to make routing easier:tests/schema.yml
Limitations
- Runs only as part of
dbt testinvocations — not evaluated in real time after each model run. - Requires manual threshold configuration per model.
- No anomaly detection or baseline learning — purely static thresholds.