The failures Convalesce investigates.
Six kinds of failure a data team meets again and again. For each one: what the team sees first, and what Convalesce gathers to explain it.
What these cost a team is in The hour nobody budgets for: what a data incident really costs.
A column renamed or retyped upstream
What the team sees
A load or a model fails on a column it can no longer find, or on a type it cannot read. The error names the table, not the change behind it.
What Convalesce gathers
The column's name and type before and after, the upstream table where it changed, and every table and dashboard downstream that reads it.
information_schema, lineage, the failing query
Empty values failing a check
What the team sees
A data quality check goes red: a column that should always be filled has empty values in it.
What Convalesce gathers
The run that wrote the rows, the upstream table the empty values came from, and whether the query or the source changed. Where reading is on for the connection, a small read-only query confirms where they start.
check results, row counts, lineage
A number that is wrong while every job is green
What the team sees
Someone asks whether a dashboard number is right. Every run finished without an error, so nothing says where to start looking.
What Convalesce gathers
Row counts and freshness for each table behind the number, the lineage path between them, and the recent changes to the code along that path.
row counts, freshness, lineage, commits
A commit that broke a job, and one that only looked guilty
What the team sees
A job fails soon after a merge. The latest commit is the obvious suspect, and it is not always the right one.
What Convalesce gathers
The commits that touched the failing query or model, set against when the run first failed and what it executed, so each commit is named with the reason it fits or does not.
commits, queries, models, run history
An outside service refusing a call
What the team sees
A task fails calling an API, a warehouse or a storage bucket: a refused sign-in, a rate limit, a timeout.
What Convalesce gathers
The exception, each retry and its exit code, the run's settings, and whether those settings differ from the last run that succeeded.
exceptions, retries, params, config
A run that fails and then passes
What the team sees
A run fails, the retry passes, and the alert is closed. The same thing happens again the week after.
What Convalesce gathers
Each attempt's state and exit code, what else was running at the time, and what differed between the attempt that failed and the one that passed.
task state, retries, exit codes
Stop reconstructing failures.
Sign in with GitHub or Google, connect a tool, and see your next failed run explained. See the tools it connects to and what it reads and sends.