A FastAPI-based backend application with integrated Prometheus and Grafana for monitoring and visualization.
- FastAPI: Modern Python web framework for building APIs
- PostgreSQL: Database for application data
- Redis: Message queue for ML workers
- MinIO: S3-compatible object storage
- ML Workers: PyTorch and ONNX inference runners
- Prometheus: Metrics collection and time-series database
- Grafana: Metrics visualization and dashboards
- Docker: Containerized development environment
# Start all services
make up
# Stop services
make down
# View logs
make logs- Collects metrics from your API at
/metricsendpoint - Accessible at http://localhost:9090
- Stores time-series data for queries
- Pre-configured dashboard for API metrics
- Accessible at http://localhost:3000 (login: admin/admin)
- Visualizes:
- Request rate
- Request duration (latency)
- Total requests
- Status code distribution
http_requests_total- Total number of HTTP requestshttp_request_duration_seconds- HTTP request latency histogram
- Monitoring Guide - Complete guide for Prometheus & Grafana
- API Docs - Interactive API documentation (when running)
- Prometheus UI - Query metrics directly
- Grafana Dashboards - Visual metrics dashboard