How akshay9024/network_anomaly works
Network Anomaly Root-Cause Assistant ingests a case’s telemetry and topology, detects anomalies, ranks causal hypotheses, builds an evidence ledger and timeline, then produces grounded narration and persists auditable results. Users submit cases and inspect incident analysis, dashboards, topology, impact paths, and audit history in the Next.js UI. The graph emphasizes the documented analysis flow and major capabilities. Some subsystem links are based on the README and SOURCE INDEX; unsampled implementation details are not asserted.
Main entry points: pipeline.py Incident Pipeline · app.py FastAPI Endpoints · engine.py Causal Discovery · rca-service.ts RCA Service Client
Components 19
Dashboard
- Incident Dashboard
frontend/app/page.tsx - Incident Views
frontend/app/incidents/[id]/page.tsx - Topology Explorer
frontend/app/topologies/[id]/page.tsx - Topology Graph
frontend/components/topology-graph.tsx - RCA Service Client
frontend/src/services/rca-service.ts
API and Workflow
- FastAPI Endpoints
rca/api/app.py - API Contract
rca/contract.py - Runtime Settings
rca/config.py
Analysis
- Telemetry Ingestion
rca/ingest - Incident Pipeline
rca/pipeline.py - Detector Ensemble
rca/detect - Topology Graph
rca/causal/graph.py - Causal Discovery
rca/causal/engine.py - Cause Ranking
rca/causal/rank.py - ML Features
rca/ml/features.py
Evidence and Results
- Evidence Ledger
rca/ledger/builder.py - Grounded Narration
rca/narrate/narrator.py - Postgres Repository
rca/db/postgres.py
Other components
- Operator
Connections 23
- Operator → Incident Dashboard: views cases
- Incident Dashboard → RCA Service Client: requests analysis
- Incident Views → RCA Service Client: loads incident
- Topology Explorer → RCA Service Client: loads topology
- Topology Explorer → Topology Graph: renders topology
frontend/app/topologies/[id]/page.tsx - RCA Service Client → FastAPI Endpoints: calls endpoints
- FastAPI Endpoints → API Contract: validates requests
rca/api/app.py - FastAPI Endpoints → Telemetry Ingestion: loads case data
rca/api/app.py - FastAPI Endpoints → Incident Pipeline: schedules analysis
rca/api/app.py - FastAPI Endpoints → Postgres Repository: reads status
rca/api/app.py - Incident Pipeline → Detector Ensemble: runs detection
rca/pipeline.py - Incident Pipeline → Causal Discovery: analyzes causes
rca/pipeline.py - Causal Discovery → Topology Graph: uses service graph
rca/causal/engine.py - Causal Discovery → Cause Ranking: ranks candidates
rca/causal/engine.py - Causal Discovery → ML Features: builds GNN features
rca/causal/engine.py - Incident Pipeline → Evidence Ledger: builds evidence
rca/pipeline.py - Incident Pipeline → Grounded Narration: requests narration
rca/pipeline.py - Incident Pipeline → Postgres Repository: persists results
rca/pipeline.py - Grounded Narration → API Contract: grounds incident
rca/narrate/narrator.py - Incident Pipeline → API Contract: returns incident
rca/pipeline.py - FastAPI Endpoints → Postgres Repository: serves read results
rca/api/app.py - Runtime Settings → FastAPI Endpoints: configures service
rca/api/app.py - Runtime Settings → Detector Ensemble: configures models
rca/detect/dl_deeplog.py