spring-projects / spring-projects/spring-batch
Feature Request: Built-in Dashboard for Spring Batch
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 3k
- Forks
- 2.5k
- Avg merge
- 6d 53m
- Merged PRs (30d)
- 3
Description
Expected Behavior
Spring Batch should provide a built-in, lightweight web dashboard (similar to JobRunr's dashboard), enabled with a single property:
spring.batch.dashboard.enabled=true
Key capabilities:
- Job Overview — All jobs with latest status, execution counts, and average duration.
- Execution Details — Drill-down into
JobExecutionwith step-level read/write/skip counts and exception stack traces. - Real-time Monitoring — Live progress for running jobs (items processed, throughput, ETA).
- History & Search — Filterable
JobInstance/JobExecutionhistory (by name, status, date range, parameters). - Manual Operations — Restart, stop, and abandon executions directly from the UI.
- Partitioned Step Visibility — Partition-level progress to identify stragglers.
Built on existing JobRepository/JobExplorer APIs, zero additional infrastructure, shipped as an optional spring-boot-starter-batch-dashboard.
JobRunr's dashboard:


Current Behavior
Spring Batch has no built-in UI. Current workarounds are all unsatisfactory:
- Direct SQL against
BATCH_JOB_EXECUTIONtables — cumbersome and not operator-friendly. - Spring Cloud Data Flow — heavyweight platform, overkill for embedded batch monitoring.
- Custom REST + UI on
JobExplorer/JobOperator— duplicated effort across the community. - Spring Batch Admin — deprecated since 2017, no replacement.
- Actuator/Micrometer — aggregated counters only, no execution-level detail or operational actions.
The JobRepository already persists all data needed for a dashboard, but there is no standard way to visualize it.
Context
Every Spring Batch team in production needs operational visibility into job status. Without a built-in dashboard, teams are forced to either build custom UIs, adopt the heavyweight SCDF, or query metadata tables via SQL. This is duplicated effort across the entire community.
| Alternative | Limitation |
|---|---|
| JobRunr | Different framework, not compatible with Spring Batch's chunk-oriented model |
| Spring Cloud Data Flow | SCDF is no longer maintained as an open-source project |
Custom JobExplorer REST + UI |
Every team builds the same thing |
| Grafana + Micrometer | No execution-level detail or restart/stop actions |
| Spring Batch Admin | Abandoned since 2017 |
JobRunr proves this is achievable — frontend bundled in JAR, enabled with one property (jobrunr.dashboard.enabled=true). Spring Batch could adopt the same approach with an optional starter module.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the existing JobRepository and JobExplorer APIs and the proposed spring-boot-starter-batch-dashboard boundary. Define the dashboard scope, UI and operational integration points, then establish how all six requested capabilities would be validated before implementation begins.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, spring
- Domain
- backend, frontend, web-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100