Dashboards & Visualisation (Grafana)¶
Status: ✅ Operational — two dashboards deployed in the SoccerPredictAI Grafana folder.
Prometheus metrics feed Grafana directly via the configured Prometheus datasource.
See Metrics reference for the full list of available metrics.
Deployed dashboards¶
Soccer — ML Quality & Betting¶
Tags: ml, monitoring, soccer
Fed by soccer_ml_monitor_quality_01 Airflow DAG, which runs after each batch inference cycle and:
- downloads predictions.parquet and finished.parquet from MinIO,
- computes rolling-window classification quality: log-loss, ECE, hit-rate,
- writes data/analysis/ml_quality/ml_quality.prom (scraped by node-exporter),
- saves data/analysis/ml_quality/ml_quality_<date>.json summary,
- generates reports/evidently/prediction_drift_<date>.html Evidently HTML report.
SoccerPredictAI¶
Tags: mlops, prediction, soccer
Service-level dashboard covering inference service metrics (request rate, latency, error rate, queue depth, loaded model version, drift score).
Design principles¶
- Focus on trends, not single points.
- Align panels with SLOs.
- Annotate deployments and model promotions.
- Avoid excessive label cardinality.
Planned additions¶
- AlertManager rule:
model_info == 0(workers lost the model). - PostgreSQL query latency via
pg_exporter. - Log aggregation (Loki).