Case study
Kafka operations / Open source
DeadLetter Explorer
A Kafka DLQ operations console for browsing, triaging, and safely replaying failed messages.
- Role
- Creator · Full-stack engineering
- Year
- 2025
- State
- Open-source tool
System / routing
Scroll to examine
Project snapshot
The condition
Challenge
Dead-letter messages need to be made explorable and safely reprocessed without turning recovery into an uncontrolled write path.
The response
Architecture
A Spring Boot WebFlux service discovers DLQ topics, fetches recent messages, and replays selected records through a guarded API. A React interface and Docker-based local infrastructure complete the operating surface.
What shaped it
Key decisions
Reactive operations API
Spring Boot 3.3 and WebFlux separate topic discovery, message retrieval, and replay into focused services.
Guarded replay
Replay is throttled and preserves only allow-listed headers before publishing to a safe target topic.
Role-based access
Keycloak/OIDC resolves viewer, triager, and replayer roles from JWT claims, with a separate secure profile.
How it feels
Experience
Operators authenticate through Keycloak, inspect DLQ topics and messages, then replay selected records to a safe target. Viewer, triager, and replayer roles keep access explicit.
What resolved
Outcome
An Apache-2.0 reference implementation with a published v0.1 release, documented local setup, and explicit caveats for clustering and production authentication.
- Published v0.1
- Apache-2.0
System composition
Technology, deliberately chosen.
- Java 21
- Spring Boot 3.3
- WebFlux
- React
- Kafka
- Keycloak