Designing Rootify as a Practical RAG System
Rootify is the kind of project I want this portfolio to explain well: not just what was built, but why the shape of the system matters.
The useful version of a log-analysis assistant is not a chatbot pasted on top of Elasticsearch. It needs a retrieval strategy, source evidence, transaction boundaries, and a way to explain uncertainty.
The rough architecture I would present:
- Ingest logs from multiple services and normalize common fields.
- Group events by transaction ID, user journey, or request correlation ID.
- Retrieve exact matches through Elasticsearch and related historical context through embeddings.
- Ask the LLM to produce a hypothesis with citations back to the retrieved evidence.
- Render separate views for engineering RCA and business impact.
The interesting engineering constraint is trust. If an AI system says "service X caused the failure," the interface should make it cheap to inspect the trace that led there.
That is the design direction I like: AI that speeds up investigation while keeping the engineer in control.