{ "dashboard": { "id": null, "title": "Application Performance", "tags": ["application", "performance"], "timezone": "Asia/Kuala_Lumpur", "panels": [ { "id": 1, "title": "HTTP Requests Rate", "type": "graph", "gridPos": {"h": 8, "w": 12, "x": 0, "y": 0}, "targets": [ { "expr": "rate(http_requests_total[5m])", "legendFormat": "{{method}} {{status}}" } ], "yaxes": [{"label": "Requests/sec"}] }, { "id": 2, "title": "Response Time Percentiles", "type": "graph", "gridPos": {"h": 8, "w": 12, "x": 12, "y": 0}, "targets": [ { "expr": "histogram_quantile(0.50, rate(http_request_duration_seconds_bucket[5m]))", "legendFormat": "P50" }, { "expr": "histogram_quantile(0.95, rate(http_request_duration_seconds_bucket[5m]))", "legendFormat": "P95" }, { "expr": "histogram_quantile(0.99, rate(http_request_duration_seconds_bucket[5m]))", "legendFormat": "P99" } ], "yaxes": [{"label": "Seconds"}] }, { "id": 3, "title": "Error Rate", "type": "graph", "gridPos": {"h": 8, "w": 12, "x": 0, "y": 8}, "targets": [ { "expr": "rate(http_requests_total{status=~\"4..\"}[5m])", "legendFormat": "4xx" }, { "expr": "rate(http_requests_total{status=~\"5..\"}[5m])", "legendFormat": "5xx" } ], "yaxes": [{"label": "Errors/sec"}] }, { "id": 4, "title": "Application Memory Usage", "type": "graph", "gridPos": {"h": 8, "w": 12, "x": 12, "y": 8}, "targets": [ { "expr": "process_resident_memory_bytes{job=\"backend\"}", "legendFormat": "{{instance}}" } ], "yaxes": [{"label": "Bytes"}] }, { "id": 5, "title": "Application CPU Usage", "type": "graph", "gridPos": {"h": 8, "w": 12, "x": 0, "y": 16}, "targets": [ { "expr": "rate(process_cpu_seconds_total{job=\"backend\"}[5m]) * 100", "legendFormat": "{{instance}}" } ], "yaxes": [{"label": "CPU %"}] }, { "id": 6, "title": "Active Users", "type": "stat", "gridPos": {"h": 4, "w": 6, "x": 12, "y": 16}, "targets": [ { "expr": "active_users", "legendFormat": "Active Users" } ] }, { "id": 7, "title": "Database Connection Pool", "type": "graph", "gridPos": {"h": 8, "w": 12, "x": 0, "y": 24}, "targets": [ { "expr": "database_connections_active", "legendFormat": "Active" }, { "expr": "database_connections_idle", "legendFormat": "Idle" }, { "expr": "database_connections_total", "legendFormat": "Total" } ], "yaxes": [{"label": "Connections"}] }, { "id": 8, "title": "Cache Hit Rate", "type": "graph", "gridPos": {"h": 8, "w": 12, "x": 12, "y": 24}, "targets": [ { "expr": "rate(redis_keyspace_hits_total[5m]) / (rate(redis_keyspace_hits_total[5m]) + rate(redis_keyspace_misses_total[5m])) * 100", "legendFormat": "Hit Rate %" } ], "yaxes": [{"label": "Hit Rate %"}] }, { "id": 9, "title": "Error Budget Remaining", "type": "gauge", "gridPos": {"h": 4, "w": 6, "x": 18, "y": 16}, "targets": [ { "expr": "error_budget_remaining_percentage", "legendFormat": "Error Budget %" } ], "fieldConfig": { "defaults": { "min": 0, "max": 100, "thresholds": { "steps": [ {"color": "green", "value": 0}, {"color": "yellow", "value": 50}, {"color": "red", "value": 10} ] } } } } ], "time": { "from": "now-1h", "to": "now" }, "refresh": "30s" } }