This project provides a publicly displayed network monitoring system for our esports center. It shows real-time information about network capacity, server status, and local PCs (e.g., whether they are active or inactive). The system is built using Prometheus, Grafana, SNMP Exporter, and a custom Python script to monitor PC activity.
PcMonitor/
): Monitors local PCs and displays their online/offline status.prometheus/
& snmp_exporter/
): Tracks network usage, server health, and other SNMP-based data.grafana/dashboards/
): Publicly visible metrics with real-time updates.PcMonitor.py
): Pings PCs and updates Prometheus metrics.Run the installation script to set up Prometheus, SNMP Exporter, and Grafana:
./deploy.sh
To ensure all services are running, use:
systemctl start prometheus
systemctl start snmp_exporter
systemctl start pc_monitor
systemctl start grafana-server
http://<raspberrypi-ip>:9090
http://<raspberrypi-ip>snmp?target=<fortigate-switch-ip>
http://<raspberrypi-ip>:3000
http://<raspberrypi-ip>:8003/metrics
To make sure everything restarts after a power outage, enable the services:
systemctl enable prometheus
systemctl enable snmp_exporter
systemctl enable pc_monitor
systemctl enable grafana-server
This system helps staff and players stay informed about network conditions and PC availability in real-time.But its mostly for fun ๐