{ "annotations": { "list": [] }, "editable": true, "fiscalYearStartMonth": 0, "graphTooltip": 0, "id": 3619608151056384, "links": [], "liveNow": false, "panels": [ { "datasource": { "type": "prometheus", "uid": "prometheus" }, "fieldConfig": { "defaults": { "unit": "reqps" }, "overrides": [] }, "gridPos": { "h": 8, "w": 12, "x": 0, "y": 0 }, "id": 1, "options": { "legend": { "displayMode": "table", "placement": "bottom", "showLegend": true }, "tooltip": { "mode": "multi", "sort": "desc" } }, "targets": [ { "expr": "sum by (code) (rate(coderd_api_requests_processed_total{job=\"coder\"}[5m]))", "legendFormat": "{{code}}", "refId": "A" } ], "title": "API requests/sec", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "prometheus" }, "fieldConfig": { "defaults": { "unit": "reqps" }, "overrides": [] }, "gridPos": { "h": 8, "w": 12, "x": 12, "y": 0 }, "id": 2, "options": { "legend": { "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "mode": "single" } }, "targets": [ { "expr": "sum(rate(coderd_api_requests_processed_total{job=\"coder\",code=~\"5..\"}[5m]))", "legendFormat": "5xx/s", "refId": "A" } ], "title": "API error rate (5xx)", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "prometheus" }, "fieldConfig": { "defaults": { "unit": "s" }, "overrides": [] }, "gridPos": { "h": 8, "w": 12, "x": 0, "y": 8 }, "id": 3, "options": { "legend": { "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "mode": "multi" } }, "targets": [ { "expr": "histogram_quantile(0.50, sum by (le) (rate(coderd_api_request_latencies_seconds_bucket{job=\"coder\"}[5m])))", "legendFormat": "p50", "refId": "A" }, { "expr": "histogram_quantile(0.95, sum by (le) (rate(coderd_api_request_latencies_seconds_bucket{job=\"coder\"}[5m])))", "legendFormat": "p95", "refId": "B" }, { "expr": "histogram_quantile(0.99, sum by (le) (rate(coderd_api_request_latencies_seconds_bucket{job=\"coder\"}[5m])))", "legendFormat": "p99", "refId": "C" } ], "title": "API latency p50/p95/p99 (s)", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "prometheus" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null } ] }, "unit": "short" }, "overrides": [] }, "gridPos": { "h": 4, "w": 6, "x": 12, "y": 8 }, "id": 4, "options": { "colorMode": "value", "graphMode": "area", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false } }, "targets": [ { "expr": "max(coderd_api_active_users_duration_hour{job=\"coder\"})", "refId": "A" } ], "title": "Active users (1h)", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "prometheus" }, "fieldConfig": { "defaults": { "color": { "mode": "thresholds" }, "thresholds": { "mode": "absolute", "steps": [ { "color": "green", "value": null } ] }, "unit": "short" }, "overrides": [] }, "gridPos": { "h": 4, "w": 6, "x": 18, "y": 8 }, "id": 5, "options": { "colorMode": "value", "graphMode": "area", "reduceOptions": { "calcs": [ "lastNotNull" ], "fields": "", "values": false } }, "targets": [ { "expr": "sum(coderd_agents_up{job=\"coder\"})", "refId": "A" } ], "title": "Agents up", "type": "stat" }, { "datasource": { "type": "prometheus", "uid": "prometheus" }, "fieldConfig": { "defaults": { "unit": "short" }, "overrides": [] }, "gridPos": { "h": 4, "w": 12, "x": 12, "y": 12 }, "id": 6, "options": { "legend": { "displayMode": "table", "placement": "right", "showLegend": true }, "tooltip": { "mode": "multi" } }, "targets": [ { "expr": "sum by (status) (coderd_api_workspace_latest_build{job=\"coder\"})", "legendFormat": "{{status}}", "refId": "A" } ], "title": "Workspace builds by status", "type": "timeseries" }, { "datasource": { "type": "prometheus", "uid": "prometheus" }, "fieldConfig": { "defaults": {}, "overrides": [ { "matcher": { "id": "byName", "options": "resident memory" }, "properties": [ { "id": "unit", "value": "bytes" } ] }, { "matcher": { "id": "byName", "options": "goroutines" }, "properties": [ { "id": "unit", "value": "short" }, { "id": "custom.axisPlacement", "value": "right" } ] } ] }, "gridPos": { "h": 8, "w": 24, "x": 0, "y": 16 }, "id": 7, "options": { "legend": { "displayMode": "list", "placement": "bottom", "showLegend": true }, "tooltip": { "mode": "multi" } }, "targets": [ { "expr": "process_resident_memory_bytes{job=\"coder\"}", "legendFormat": "resident memory", "refId": "A" }, { "expr": "go_goroutines{job=\"coder\"}", "legendFormat": "goroutines", "refId": "B" } ], "title": "Process memory & goroutines", "type": "timeseries" } ], "refresh": "30s", "schemaVersion": 39, "style": "dark", "tags": [ "coder", "homelab" ], "templating": { "list": [] }, "time": { "from": "now-6h", "to": "now" }, "timepicker": {}, "timezone": "", "title": "coder", "uid": "coder-homelab", "version": 1, "weekStart": "" }