Telemetry AI
LLM-powered root-cause analysis of distributed telemetry data.
What It Is
Telemetry AI is a Quarkus-based system that uses LLMs to automatically analyze distributed telemetry data (traces, logs, metrics) from instrumented applications. It connects to a Grafana LGTM stack via MCP (Model Context Protocol) clients, gathers correlated telemetry, and produces structured root-cause analysis reports.
Architecture
flowchart LR User[User] AI[AI Module] subgraph YourApps[Your Applications] App1[App 1] App2[App 2] end subgraph LGTM[LGTM Stack] Tempo[Tempo] Loki[Loki] Prom[Prometheus] end subgraph LLMs[LLM Providers] OpenAI[OpenAI] Grok[Grok] Gemini[Gemini] WatsonX[WatsonX] end User --> AI YourApps -.->|OTel| LGTM Tempo <-->|MCP| AI Loki <-->|MCP| AI Prom <-->|MCP| AI AI <-->|Dev MCP| YourApps AI -->|LangChain4j| LLMs style AI fill:#3498db,color:#fff style YourApps fill:#f5f5f5,stroke:#2ecc71 style LGTM fill:#f5f5f5,stroke:#bbb style LLMs fill:#f5f5f5,stroke:#bbb
The AI module connects to your existing LGTM stack via MCP and to your running Quarkus applications via Dev MCP (for source examination and dashboard generation). Your applications just need OpenTelemetry instrumentation — no code changes required.
The AI module is available as an uber-jar on Maven Central (io.quarkiverse.telemetry:telemetry-ai-core:<version>:jar:runner).
Analysis Pipeline
sequenceDiagram participant U as User participant AI as AI Module participant Strip as StripMcpClient participant LGTM as LGTM participant LLM as LLM U->>AI: GET /analyze/n AI->>LLM: System prompt + tools loop Per-trace investigation LLM->>LGTM: Get trace + logs LGTM-->>Strip: Raw data Strip-->>LLM: Stripped data end LLM->>LGTM: Get metrics LGTM-->>Strip: Raw metrics Strip-->>LLM: Filtered metrics LLM-->>AI: Analysis report AI-->>U: HTML / Markdown / Text