March 28, 2026 8 min read
Aggregating JIRA Data with Spring Boot and Elasticsearch
How I built Khoji — a tool that consolidates JIRA data and raises progress alerts using Spring Boot, Elasticsearch, and Logstash.
Spring BootElasticsearchLogstashTooling
By Hafiz Syed Muhammad Usman
Progress lives in JIRA, but JIRA alone makes it hard to see the whole picture quickly. Khoji pulls that data into one place, indexes it for fast querying, and raises alerts when work is slipping.
The pipeline
- Fetch data from JIRA on a schedule
- Ingest through Logstash into Elasticsearch for fast search
- Persist relational data via JPA/Hibernate
- Expose a consolidated view through REST APIs
Why Elasticsearch
Aggregating and querying issue data across teams is a search problem as much as a database one. Elasticsearch makes cross-cutting queries fast, while the relational store keeps the canonical records.
Actionable alerts
The hard part isn't detecting changes — it's raising alerts people actually act on. Rules target real risk signals rather than every status change, so the noise stays low.