# Databricks jobs health dashboard for your whole workspace

> See every Databricks job in one table with failures, slowdowns, and stale schedules flagged, then rerun, cancel, or pause without leaving the page.

- Workflow type: app
- Services: Databricks, Slack Bot, Linear
- Categories: Engineering
- Published: 2026-08-17

## What it does

- One table of every job in your workspace showing its last run status, how many times it has failed in a row, and whether it is running slower than its recent average.
- A stale flag for jobs that have not run in the number of days you choose, plus one-click filters for failed, currently running, and stale jobs.
- Click any job to read its recent run history and the actual error text, then rerun only the parts that failed, start a fresh run, stop a stuck run, or pause a noisy schedule.
- Push a failure summary to a Slack channel or open a Linear ticket with the job name and error details already filled in.
- A second tab does the same at-a-glance health check for your Delta Live Tables pipelines.

## What you'll need

- A Databricks workspace, and permission to view and run its jobs
- A Slack workspace, if you want to post failure summaries to a channel
- A Linear account, if you want to file tickets straight from the dashboard

## Prompt

Build me an app my data engineering team opens every morning to see the health of every Databricks job in one place. The Databricks UI is good for diagnosing a single job but gives you nothing for a workspace-wide view: how many jobs are scheduled, which ones crashed recently, which ones have not run in a while, and where execution times are gradually creeping up.

The main tab is a table of every job in the workspace. Load the jobs with List Jobs, following next_page_token until every page is in, and pull recent history with List Job Runs. For each job show the job name, the last run status and when it finished, the current failure streak (consecutive failed runs counting back from the most recent), the latest run duration versus the average of recent successful runs with the gap called out when the latest run is meaningfully slower, and a stale flag when the job has not run within the configured number of days.

Databricks retains run history for 60 days, so cap the history window at 60 days and default to something smaller, around the last 14 days, for the streak and average calculations. All Databricks timestamps are Unix epoch milliseconds, so convert them for display and never show the raw number.

Give the table filters for failed only, currently running, and stale, plus a search box on job name. Let me set the stale threshold in days from a settings control, and persist it so the whole team shares the same definition of stale.

Clicking a job opens a detail panel. Show its recent runs using Get Job Run for per-run state, timing, and task breakdown, and pull the error text for failed runs with Get Job Run Output so I can read what actually broke without leaving the app. Use Get Job for the job's settings, including whether its schedule is currently paused.

From that panel give me buttons to re-run only the failed tasks with Repair Job Run, trigger a fresh run with Run Job Now, cancel a hung run with Cancel Job Run (and Cancel All Job Runs when several runs of the same job are stuck), and pause a noisy schedule with Update Job by setting the schedule's pause status. Every one of these is destructive, so each must open a confirmation dialog naming the job and the specific run before it fires.

Job and run state changes are asynchronous. Run Job Now and Repair Job Run return a run id and nothing else, so the handler should return that run id and the UI should refetch run state to show what actually happened rather than claiming success. Do the same after cancelling or pausing: re-read the state instead of assuming the call worked.

From the detail panel I also want to push the failure summary to Slack with Send a Message, choosing the destination channel from a picker populated by List Channels. The message should carry the job name, run id, failure streak, when it failed, and a trimmed excerpt of the error output. And I want to file a Linear ticket with Create Issue, picking the team from List Teams, with a title naming the job and a description carrying the job name, run id, a link back to the run, and the error output.

Add a second tab listing Delta Live Tables pipelines from List Pipelines with the same status-at-a-glance treatment: pipeline name, current state, latest update state, and a stale flag using the same threshold. Read-only is fine on this tab; the point is spotting a broken pipeline at a glance.

Density matters because this is a morning triage screen. Fit as many rows on screen as stays legible, show status as a colored badge, and make failing or stale rows easy to pick out in a quick scan. Sort so problems come first: failed, then stale, then everything else.

## How to customize

- Change how many days without a run marks a job as stale
- Choose which Slack channel failure summaries go to and which Linear team receives the tickets
- Adjust how far back the run history goes when working out failure streaks and average run times

## FAQ

### Does this replace the Databricks jobs screen?

No. Databricks is still the best place to dig into a single run. This gives you the workspace-wide view it does not: every job side by side, so you can spot the failures, the slowdowns, and the jobs that quietly stopped running.

### How far back does the run history go?

Databricks keeps roughly 60 days of run history, so the dashboard works within that window. Most teams look at the last week or two when judging failure streaks and average run times.

### Can it actually fix a failed job, or does it only show me the problem?

You can act on it from the same screen. Rerun only the parts that failed, trigger a fresh run, cancel a run that is stuck, or pause a schedule that keeps firing. Anything that changes a job asks you to confirm first.

### Will it show my Delta Live Tables pipelines too?

Yes. A second tab lists your pipelines with the same status-at-a-glance treatment, so a broken pipeline is as easy to spot as a broken job.

### Do I need both Slack and Linear?

No, both are optional. Without them you still get the full dashboard and all the run controls. With them you can send a failure summary to a channel or open a ticket in one click.

Use this prompt in General Input: https://www.generalinput.com/prompts/databricks-jobs-health-dashboard-for-your-whole-workspace