Reports and history¶
Status: Available in ETLantic 0.41.0. Operator hub for run reports, durable history, and
durable_audit. Protocol detail lives under Plugin SDK.
What to use when¶
| Need | Use | CLI |
|---|---|---|
| Latest run outcomes in the workspace | File report store (.etlantic/reports/) |
etlantic report list / show |
| Cross-run history + events | Run history provider (.etlantic/history/ via workspace) |
etlantic report query |
| Fail closed when history cannot persist | observability_delivery: durable_audit on the Profile |
configure profile JSON |
| Fan-out to OTel / console providers | Observability providers | profile observability_providers |
Minimal operator path¶
- Run a pipeline (CLI creates workspace reports by default):
python -m etlantic run pipeline.py:SamplePipeline --profile development
python -m etlantic report list
- Query durable history (workspace
.etlantic/history/):
python -m etlantic report query --format json --limit 20
python -m etlantic report query --since 2026-01-01T00:00:00+00:00 --status succeeded
- For production pilots that require audit-style persistence, set in profile JSON:
{
"name": "production",
"security_mode": "production",
"plugin_allowlist": {"etlantic-polars": "==0.41.0"},
"run_history_provider": "file",
"observability_delivery": "durable_audit"
}
durable_audit fails closed when required history persistence or provider flush
fails. best_effort logs and continues.
Detail pages¶
- Run Reports — report model and fields
- Durable Reports —
.etlantic/reports/store - Observability today — M6 surface summary
- Protocols: Observability, Run history, Event consumer
- Failures: Troubleshooting → M6 ops cookbook
SDK sketch¶
import etlantic as etl
from etlantic.observability import FileRunHistoryProvider
from etlantic.runtime.observability_bridge import ObservabilityBridge
profile = etl.Profile(
name="production",
security_mode="production",
plugin_allowlist={"etlantic-polars": "==0.41.0"},
run_history_provider="file",
observability_delivery="durable_audit",
)
# Register providers on PipelineRuntime / bridge as documented in
# Observability Provider + Run History Provider guides.
Prefer import etlantic.observability (or the guides above) — there is no
etl.observability lazy namespace on the curated root.