""" Proper Grafana queries for traffic monitoring dashboard """ print("=== TRAFFIC MONITORING DASHBOARD QUERIES ===") print("\n🚦 1. TRAFFIC LIGHT STATUS (Current Color)") print("Query:") print('''from(bucket: "traffic_monitoring") |> range(start: -5m) |> filter(fn: (r) => r._measurement == "traffic_light_status") |> filter(fn: (r) => r._field == "color_numeric") |> last()''') print("Panel Type: Stat") print("Value Mappings:") print("1 → RED šŸ”“") print("2 → YELLOW 🟔") print("3 → GREEN 🟢") print("\n🚨 2. RED LIGHT VIOLATIONS COUNT") print("Query:") print('''from(bucket: "traffic_monitoring") |> range(start: -1h) |> filter(fn: (r) => r._measurement == "violation_events") |> filter(fn: (r) => r._field == "count") |> sum()''') print("Panel Type: Stat") print("Shows: Total violations in last hour") print("\nšŸ’» 3. DEVICE INFORMATION (CPU/GPU/Memory)") print("Main Device Status Query:") print('''from(bucket: "traffic_monitoring") |> range(start: -1m) |> filter(fn: (r) => r._measurement == "device_info") |> filter(fn: (r) => r._field == "status") |> last()''') print("\nCPU Usage Query:") print('''from(bucket: "traffic_monitoring") |> range(start: -5m) |> filter(fn: (r) => r._measurement == "performance_metrics") |> filter(fn: (r) => r._field == "cpu_usage") |> mean()''') print("\nMemory Usage Query:") print('''from(bucket: "traffic_monitoring") |> range(start: -5m) |> filter(fn: (r) => r._measurement == "performance_metrics") |> filter(fn: (r) => r._field == "memory_usage") |> mean()''') print("\nGPU Usage Query:") print('''from(bucket: "traffic_monitoring") |> range(start: -5m) |> filter(fn: (r) => r._measurement == "performance_metrics") |> filter(fn: (r) => r._field == "gpu_usage") |> mean()''') print("\n=== STEP BY STEP FIX ===") print("1. Go to http://localhost:3000") print("2. Edit Traffic Light panel - use query #1") print("3. Edit Violations panel - use query #2") print("4. Edit Device Info panel - use query #3") print("5. Add CPU/Memory/GPU panels with respective queries") print("6. Set all panels to auto-refresh every 5s")