πŸ“‘ SignalGuard

AI-ready observability platform

Production-grade demo

SignalGuard Observability Platform

AI-ready observability stack with synthetic microservices, Prometheus metrics, anomaly detection, Grafana dashboards, and a live GitHub Pages demo (simulated).

πŸš€ View Live Dashboard

πŸ” Overview

SignalGuard is an end-to-end observability demo environment designed to showcase:

  • Production-grade monitoring & observability practices
  • Instrumentation of microservices using Prometheus metrics
  • A separate Python anomaly detection service that behaves like an early-stage AIOps layer
  • Grafana dashboards for system and service health
  • A modern web dashboard (GitHub Pages) with live-updating charts and simulated incident patterns

This project demonstrates how monitoring, metrics pipelines, anomaly detection, and dashboards can be composed into a coherent observability platformβ€”the same architectural pattern used in real SRE, Ops, and AIOps workflows.

πŸš€ Features

🧩 Synthetic Microservices (FastAPI)

  • Latency histograms
  • Error rate spikes
  • Request throughput
  • Business metrics
  • Background load generation

All exported as Prometheus metrics.

πŸ€– Anomaly Detection Service

  • Queries Prometheus ranges (via HTTP API)
  • Computes statistical anomaly score
  • Emits signalguard_anomaly_flag
  • Emits signalguard_anomaly_score

Models a lightweight AIOps system.

πŸ“ˆ Prometheus & Grafana

  • Auto-provisioned using Docker
  • Prometheus scrapes all services
  • Grafana dashboard JSON loads automatically
  • Contains latency p95, error rate, throughput
  • Anomaly score panels

πŸ’  Standalone GitHub Pages Dashboard

  • Completely static
  • NO backend required
  • Runs on simulated data
  • Beautiful glassmorphism UI
  • Real-time charts
  • Synthetic anomalies

Ideal for interviews or recruiters.

πŸ—οΈ Architecture

signalguard-observability β”œβ”€β”€ services/ β”‚ β”œβ”€β”€ app/ # FastAPI microservice β”‚ β”‚ β”œβ”€β”€ app.py # Routes + Prometheus metrics + synthetic load β”‚ β”‚ β”œβ”€β”€ static/ # Frontend assets (for local dashboard) β”‚ β”‚ └── Dockerfile β”‚ β”‚ β”‚ β”œβ”€β”€ anomaly-detector/ # Python anomaly detection service β”‚ β”œβ”€β”€ detector.py # Pulls metrics from Prometheus β”‚ └── Dockerfile β”‚ β”œβ”€β”€ observability/ β”‚ β”œβ”€β”€ prometheus/ # Scrape config & rules β”‚ └── grafana/ # Provisioning + dashboards β”‚ β”œβ”€β”€ docs/ # GitHub Pages dashboard (simulated) β”‚ β”œβ”€β”€ index.html β”‚ β”œβ”€β”€ styles.css β”‚ └── script.js β”‚ β”œβ”€β”€ docker-compose.yml └── README.md

πŸ› οΈ Running the Full System (Local Deployment)

Requirements:

  • Docker
  • Docker Compose

πŸ”§ Step 1 β€” Clone Repo

git clone https://github.com/danial-amin/signalguard-observability

πŸ”§ Step 2 β€” Run the stack

docker-compose build
docker-compose up

🌐 Services

Service Description URL
FastAPI Microservice Synthetic endpoints + metrics http://localhost:8000
FastAPI Local Dashboard Interactive dashboard http://localhost:8000/dashboard
Prometheus Metrics explorer http://localhost:9090
Grafana Dashboards (login: admin / admin) http://localhost:3000
Anomaly Detector API Exposes anomaly flags http://localhost:8001

🎯 Why This Project Matters

This project demonstrates:

βœ” Observability Architecture

  • Microservice instrumentation
  • Metrics pipelines
  • Prometheus scraping
  • Grafana provisioning
  • Real-time monitoring

βœ” AIOps Foundations

  • Automated anomaly detection
  • Metric-driven incident detection
  • Flags + scoring + thresholds
  • Modular ML microservice pattern

βœ” System Design Skills

  • Independent services
  • Clean dockerized environment
  • Clear separation of concerns
  • Realistic production-like pipeline

βœ” Frontend + UX

  • Custom dashboard
  • Charts, alerts, anomaly cards
  • Modern, responsive UI

This makes you look both engineering-strong AND design-aware β€” a combination that companies like Kyndryl, Supercell, Samsung, and Oura love.

🚦 GitHub Pages Deployment (Static Demo)

This repo includes a docs/ folder that GitHub Pages serves automatically.

How it works:

  • Every 5 seconds, the dashboard generates synthetic request counts, error rates, and anomaly detection patterns
  • No backend required
  • Perfectly safe to load anywhere
πŸš€ View Live Dashboard Demo

πŸ“œ License

MIT License

🀝 Contributions

Open to pull requests, improvements, and extensionsβ€”especially around:

  • Additional anomaly detection techniques
  • Predictive models
  • More microservices
  • Histogram-based ML inputs