{
	"__inputs": [
		{
			"name": "DS_PROMETHEUS",
			"label": "Prometheus",
			"description": "",
			"type": "datasource",
			"pluginId": "prometheus",
			"pluginName": "Prometheus"
		},
		{
			"name": "VAR_FILTER_KEY",
			"type": "constant",
			"label": "Filter key",
			"value": "app",
			"description": ""
		},
		{
			"name": "VAR_FILTER_VALUE",
			"type": "constant",
			"label": "Filter value",
			"value": "coder",
			"description": ""
		}
	],
	"__elements": {},
	"__requires": [
		{
			"type": "grafana",
			"id": "grafana",
			"name": "Grafana",
			"version": "9.5.3"
		},
		{
			"type": "datasource",
			"id": "prometheus",
			"name": "Prometheus",
			"version": "1.0.0"
		},
		{
			"type": "panel",
			"id": "stat",
			"name": "Stat",
			"version": ""
		},
		{
			"type": "panel",
			"id": "timeseries",
			"name": "Time series",
			"version": ""
		}
	],
	"annotations": {
		"list": [
			{
				"builtIn": 1,
				"datasource": {
					"type": "grafana",
					"uid": "-- Grafana --"
				},
				"enable": true,
				"hide": true,
				"iconColor": "rgba(0, 211, 255, 1)",
				"name": "Annotations & Alerts",
				"type": "dashboard"
			}
		]
	},
	"editable": true,
	"fiscalYearStartMonth": 0,
	"graphTooltip": 0,
	"id": null,
	"links": [],
	"liveNow": false,
	"panels": [
		{
			"datasource": {
				"type": "prometheus",
				"uid": "${DS_PROMETHEUS}"
			},
			"fieldConfig": {
				"defaults": {
					"color": {
						"mode": "palette-classic"
					},
					"custom": {
						"axisCenteredZero": false,
						"axisColorMode": "text",
						"axisLabel": "",
						"axisPlacement": "auto",
						"barAlignment": 0,
						"drawStyle": "line",
						"fillOpacity": 0,
						"gradientMode": "none",
						"hideFrom": {
							"legend": false,
							"tooltip": false,
							"viz": false
						},
						"lineInterpolation": "linear",
						"lineWidth": 1,
						"pointSize": 5,
						"scaleDistribution": {
							"type": "linear"
						},
						"showPoints": "auto",
						"spanNulls": false,
						"stacking": {
							"group": "A",
							"mode": "none"
						},
						"thresholdsStyle": {
							"mode": "off"
						}
					},
					"mappings": [],
					"thresholds": {
						"mode": "absolute",
						"steps": [
							{
								"color": "green",
								"value": null
							},
							{
								"color": "red",
								"value": 80
							}
						]
					}
				},
				"overrides": [
					{
						"matcher": {
							"id": "byRegexp",
							"options": "/.*/"
						},
						"properties": [
							{
								"id": "displayName",
								"value": "CPU seconds"
							},
							{
								"id": "unit",
								"value": "s"
							}
						]
					}
				]
			},
			"gridPos": {
				"h": 8,
				"w": 12,
				"x": 0,
				"y": 0
			},
			"id": 1,
			"options": {
				"legend": {
					"calcs": [],
					"displayMode": "list",
					"placement": "bottom",
					"showLegend": true
				},
				"tooltip": {
					"mode": "single",
					"sort": "none"
				}
			},
			"targets": [
				{
					"datasource": {
						"type": "prometheus",
						"uid": "${DS_PROMETHEUS}"
					},
					"editorMode": "builder",
					"expr": "rate(process_cpu_seconds_total{$filter_key=\"$filter_value\"}[$__rate_interval])",
					"legendFormat": "__auto",
					"range": true,
					"refId": "A"
				}
			],
			"title": "CPU Usage",
			"type": "timeseries"
		},
		{
			"datasource": {
				"type": "prometheus",
				"uid": "${DS_PROMETHEUS}"
			},
			"fieldConfig": {
				"defaults": {
					"color": {
						"mode": "thresholds"
					},
					"mappings": [],
					"thresholds": {
						"mode": "absolute",
						"steps": [
							{
								"color": "green",
								"value": null
							},
							{
								"color": "red",
								"value": 80
							}
						]
					}
				},
				"overrides": []
			},
			"gridPos": {
				"h": 8,
				"w": 4,
				"x": 12,
				"y": 0
			},
			"id": 2,
			"options": {
				"colorMode": "value",
				"graphMode": "area",
				"justifyMode": "auto",
				"orientation": "auto",
				"reduceOptions": {
					"calcs": ["lastNotNull"],
					"fields": "",
					"values": false
				},
				"textMode": "auto"
			},
			"pluginVersion": "9.5.3",
			"targets": [
				{
					"datasource": {
						"type": "prometheus",
						"uid": "${DS_PROMETHEUS}"
					},
					"editorMode": "builder",
					"expr": "coderd_api_active_users_duration_hour{$filter_key=\"$filter_value\"}",
					"legendFormat": "__auto",
					"range": true,
					"refId": "A"
				}
			],
			"title": "Active Users",
			"type": "stat"
		},
		{
			"datasource": {
				"type": "prometheus",
				"uid": "${DS_PROMETHEUS}"
			},
			"fieldConfig": {
				"defaults": {
					"color": {
						"mode": "thresholds"
					},
					"mappings": [],
					"thresholds": {
						"mode": "absolute",
						"steps": [
							{
								"color": "green",
								"value": null
							},
							{
								"color": "red",
								"value": 80
							}
						]
					}
				},
				"overrides": []
			},
			"gridPos": {
				"h": 8,
				"w": 4,
				"x": 16,
				"y": 0
			},
			"id": 5,
			"options": {
				"colorMode": "value",
				"graphMode": "area",
				"justifyMode": "auto",
				"orientation": "auto",
				"reduceOptions": {
					"calcs": ["lastNotNull"],
					"fields": "",
					"values": false
				},
				"textMode": "auto"
			},
			"pluginVersion": "9.5.3",
			"targets": [
				{
					"datasource": {
						"type": "prometheus",
						"uid": "${DS_PROMETHEUS}"
					},
					"editorMode": "builder",
					"expr": "sum(coderd_agents_up{$filter_key=\"$filter_value\"})",
					"legendFormat": "__auto",
					"range": true,
					"refId": "A"
				}
			],
			"title": "Running agents",
			"type": "stat"
		},
		{
			"datasource": {
				"type": "prometheus",
				"uid": "${DS_PROMETHEUS}"
			},
			"fieldConfig": {
				"defaults": {
					"color": {
						"mode": "thresholds"
					},
					"mappings": [],
					"thresholds": {
						"mode": "absolute",
						"steps": [
							{
								"color": "green",
								"value": null
							},
							{
								"color": "red",
								"value": 80
							}
						]
					},
					"unit": "ms"
				},
				"overrides": []
			},
			"gridPos": {
				"h": 8,
				"w": 4,
				"x": 20,
				"y": 0
			},
			"id": 6,
			"options": {
				"colorMode": "value",
				"graphMode": "area",
				"justifyMode": "auto",
				"orientation": "auto",
				"reduceOptions": {
					"calcs": ["lastNotNull"],
					"fields": "",
					"values": false
				},
				"textMode": "auto"
			},
			"pluginVersion": "9.5.3",
			"targets": [
				{
					"datasource": {
						"type": "prometheus",
						"uid": "${DS_PROMETHEUS}"
					},
					"editorMode": "builder",
					"expr": "avg(coderd_agents_connection_latencies_seconds{$filter_key=\"$filter_value\"})",
					"legendFormat": "__auto",
					"range": true,
					"refId": "A"
				}
			],
			"title": "Avg connection latency",
			"type": "stat"
		},
		{
			"datasource": {
				"type": "prometheus",
				"uid": "${DS_PROMETHEUS}"
			},
			"fieldConfig": {
				"defaults": {
					"color": {
						"mode": "palette-classic"
					},
					"custom": {
						"axisCenteredZero": false,
						"axisColorMode": "text",
						"axisLabel": "",
						"axisPlacement": "auto",
						"barAlignment": 0,
						"drawStyle": "line",
						"fillOpacity": 0,
						"gradientMode": "none",
						"hideFrom": {
							"legend": false,
							"tooltip": false,
							"viz": false
						},
						"lineInterpolation": "linear",
						"lineWidth": 1,
						"pointSize": 5,
						"scaleDistribution": {
							"type": "linear"
						},
						"showPoints": "auto",
						"spanNulls": false,
						"stacking": {
							"group": "A",
							"mode": "none"
						},
						"thresholdsStyle": {
							"mode": "off"
						}
					},
					"mappings": [],
					"thresholds": {
						"mode": "absolute",
						"steps": [
							{
								"color": "green",
								"value": null
							},
							{
								"color": "red",
								"value": 80
							}
						]
					}
				},
				"overrides": [
					{
						"matcher": {
							"id": "byRegexp",
							"options": "/coderd_provisionerd_num_daemons/"
						},
						"properties": [
							{
								"id": "displayName",
								"value": "Running provisioners"
							}
						]
					},
					{
						"matcher": {
							"id": "byRegexp",
							"options": "/coderd_provisionerd_jobs_current/"
						},
						"properties": [
							{
								"id": "displayName",
								"value": "Running jobs"
							}
						]
					}
				]
			},
			"gridPos": {
				"h": 8,
				"w": 12,
				"x": 0,
				"y": 8
			},
			"id": 3,
			"options": {
				"legend": {
					"calcs": [],
					"displayMode": "list",
					"placement": "bottom",
					"showLegend": true
				},
				"tooltip": {
					"mode": "single",
					"sort": "none"
				}
			},
			"targets": [
				{
					"datasource": {
						"type": "prometheus",
						"uid": "${DS_PROMETHEUS}"
					},
					"editorMode": "builder",
					"expr": "coderd_provisionerd_jobs_current{$filter_key=\"$filter_value\"}",
					"legendFormat": "__auto",
					"range": true,
					"refId": "A"
				},
				{
					"datasource": {
						"type": "prometheus",
						"uid": "${DS_PROMETHEUS}"
					},
					"editorMode": "builder",
					"expr": "coderd_provisionerd_num_daemons{$filter_key=\"$filter_value\"}",
					"hide": false,
					"legendFormat": "__auto",
					"range": true,
					"refId": "B"
				}
			],
			"title": "Concurrent jobs",
			"type": "timeseries"
		},
		{
			"datasource": {
				"type": "prometheus",
				"uid": "${DS_PROMETHEUS}"
			},
			"fieldConfig": {
				"defaults": {
					"color": {
						"mode": "palette-classic"
					},
					"custom": {
						"axisCenteredZero": false,
						"axisColorMode": "text",
						"axisLabel": "",
						"axisPlacement": "auto",
						"barAlignment": 0,
						"drawStyle": "line",
						"fillOpacity": 0,
						"gradientMode": "none",
						"hideFrom": {
							"legend": false,
							"tooltip": false,
							"viz": false
						},
						"lineInterpolation": "linear",
						"lineWidth": 1,
						"pointSize": 5,
						"scaleDistribution": {
							"type": "linear"
						},
						"showPoints": "auto",
						"spanNulls": false,
						"stacking": {
							"group": "A",
							"mode": "none"
						},
						"thresholdsStyle": {
							"mode": "off"
						}
					},
					"mappings": [],
					"thresholds": {
						"mode": "absolute",
						"steps": [
							{
								"color": "green",
								"value": null
							},
							{
								"color": "red",
								"value": 80
							}
						]
					},
					"unit": "s"
				},
				"overrides": [
					{
						"matcher": {
							"id": "byRegexp",
							"options": "/.*coderd_db_query_latencies_seconds_count.*/"
						},
						"properties": [
							{
								"id": "unit",
								"value": "none"
							},
							{
								"id": "displayName",
								"value": "Queries/s"
							}
						]
					},
					{
						"matcher": {
							"id": "byRegexp",
							"options": "/.*coderd_db_query_latencies_seconds_bucket.*/"
						},
						"properties": [
							{
								"id": "displayName",
								"value": "P95 query latency"
							}
						]
					}
				]
			},
			"gridPos": {
				"h": 8,
				"w": 12,
				"x": 12,
				"y": 8
			},
			"id": 7,
			"options": {
				"legend": {
					"calcs": [],
					"displayMode": "list",
					"placement": "bottom",
					"showLegend": true
				},
				"tooltip": {
					"mode": "single",
					"sort": "none"
				}
			},
			"pluginVersion": "9.5.3",
			"targets": [
				{
					"datasource": {
						"type": "prometheus",
						"uid": "${DS_PROMETHEUS}"
					},
					"editorMode": "builder",
					"expr": "histogram_quantile(0.95, sum by(le) (rate(coderd_db_query_latencies_seconds_bucket{$filter_key=\"$filter_value\"}[$__rate_interval])))",
					"hide": false,
					"legendFormat": "__auto",
					"range": true,
					"refId": "A"
				},
				{
					"datasource": {
						"type": "prometheus",
						"uid": "${DS_PROMETHEUS}"
					},
					"editorMode": "builder",
					"expr": "sum(rate(coderd_db_query_latencies_seconds_count{$filter_key=\"$filter_value\"}[$__rate_interval]))",
					"hide": false,
					"legendFormat": "__auto",
					"range": true,
					"refId": "B"
				}
			],
			"title": "Query latency and rate",
			"type": "timeseries"
		},
		{
			"datasource": {
				"type": "prometheus",
				"uid": "${DS_PROMETHEUS}"
			},
			"fieldConfig": {
				"defaults": {
					"color": {
						"mode": "palette-classic"
					},
					"custom": {
						"axisCenteredZero": false,
						"axisColorMode": "text",
						"axisLabel": "",
						"axisPlacement": "auto",
						"barAlignment": 0,
						"drawStyle": "line",
						"fillOpacity": 0,
						"gradientMode": "none",
						"hideFrom": {
							"legend": false,
							"tooltip": false,
							"viz": false
						},
						"lineInterpolation": "linear",
						"lineWidth": 1,
						"pointSize": 5,
						"scaleDistribution": {
							"type": "linear"
						},
						"showPoints": "auto",
						"spanNulls": false,
						"stacking": {
							"group": "A",
							"mode": "none"
						},
						"thresholdsStyle": {
							"mode": "off"
						}
					},
					"mappings": [],
					"thresholds": {
						"mode": "absolute",
						"steps": [
							{
								"color": "green",
								"value": null
							},
							{
								"color": "red",
								"value": 80
							}
						]
					}
				},
				"overrides": [
					{
						"matcher": {
							"id": "byRegexp",
							"options": "/go_memstats_alloc_bytes/"
						},
						"properties": [
							{
								"id": "custom.axisPlacement",
								"value": "left"
							},
							{
								"id": "unit",
								"value": "bytes"
							},
							{
								"id": "displayName",
								"value": "Allocated bytes"
							}
						]
					},
					{
						"matcher": {
							"id": "byRegexp",
							"options": "/go_goroutines/"
						},
						"properties": [
							{
								"id": "displayName",
								"value": "Goroutines"
							}
						]
					}
				]
			},
			"gridPos": {
				"h": 8,
				"w": 12,
				"x": 0,
				"y": 16
			},
			"id": 4,
			"options": {
				"legend": {
					"calcs": [],
					"displayMode": "list",
					"placement": "bottom",
					"showLegend": true
				},
				"tooltip": {
					"mode": "single",
					"sort": "none"
				}
			},
			"targets": [
				{
					"datasource": {
						"type": "prometheus",
						"uid": "${DS_PROMETHEUS}"
					},
					"editorMode": "builder",
					"expr": "go_memstats_alloc_bytes{$filter_key=\"$filter_value\"}",
					"legendFormat": "__auto",
					"range": true,
					"refId": "A"
				},
				{
					"datasource": {
						"type": "prometheus",
						"uid": "${DS_PROMETHEUS}"
					},
					"editorMode": "builder",
					"exemplar": false,
					"expr": "go_goroutines{$filter_key=\"$filter_value\"}",
					"hide": false,
					"legendFormat": "__auto",
					"range": true,
					"refId": "B"
				}
			],
			"title": "Heap and Goroutines",
			"type": "timeseries"
		},
		{
			"datasource": {
				"type": "prometheus",
				"uid": "${DS_PROMETHEUS}"
			},
			"fieldConfig": {
				"defaults": {
					"color": {
						"mode": "palette-classic"
					},
					"custom": {
						"axisCenteredZero": false,
						"axisColorMode": "text",
						"axisLabel": "",
						"axisPlacement": "auto",
						"barAlignment": 0,
						"drawStyle": "line",
						"fillOpacity": 0,
						"gradientMode": "none",
						"hideFrom": {
							"legend": false,
							"tooltip": false,
							"viz": false
						},
						"lineInterpolation": "linear",
						"lineWidth": 1,
						"pointSize": 5,
						"scaleDistribution": {
							"type": "linear"
						},
						"showPoints": "auto",
						"spanNulls": false,
						"stacking": {
							"group": "A",
							"mode": "none"
						},
						"thresholdsStyle": {
							"mode": "off"
						}
					},
					"mappings": [],
					"thresholds": {
						"mode": "absolute",
						"steps": [
							{
								"color": "green",
								"value": null
							},
							{
								"color": "red",
								"value": 80
							}
						]
					}
				},
				"overrides": [
					{
						"matcher": {
							"id": "byRegexp",
							"options": "/coderd_api_requests_processed_total{code=\"500\"}/"
						},
						"properties": [
							{
								"id": "displayName",
								"value": "Error rate"
							},
							{
								"id": "unit",
								"value": "reqps"
							}
						]
					},
					{
						"matcher": {
							"id": "byRegexp",
							"options": "/coderd_api_requests_processed_total/"
						},
						"properties": [
							{
								"id": "displayName",
								"value": "Request rate"
							},
							{
								"id": "unit",
								"value": "reqps"
							}
						]
					},
					{
						"matcher": {
							"id": "byRegexp",
							"options": "/coderd_api_request_latencies_seconds_bucket/"
						},
						"properties": [
							{
								"id": "unit",
								"value": "s"
							},
							{
								"id": "displayName",
								"value": "P95 request latency"
							}
						]
					}
				]
			},
			"gridPos": {
				"h": 8,
				"w": 12,
				"x": 12,
				"y": 16
			},
			"id": 8,
			"options": {
				"legend": {
					"calcs": [],
					"displayMode": "list",
					"placement": "bottom",
					"showLegend": true
				},
				"tooltip": {
					"mode": "single",
					"sort": "none"
				}
			},
			"targets": [
				{
					"datasource": {
						"type": "prometheus",
						"uid": "${DS_PROMETHEUS}"
					},
					"editorMode": "builder",
					"expr": "sum(rate(coderd_api_requests_processed_total{$filter_key=\"$filter_value\"}[$__rate_interval]))",
					"interval": "",
					"legendFormat": "__auto",
					"range": true,
					"refId": "A"
				},
				{
					"datasource": {
						"type": "prometheus",
						"uid": "${DS_PROMETHEUS}"
					},
					"editorMode": "builder",
					"expr": "sum(rate(coderd_api_requests_processed_total{code=\"500\"}[$__rate_interval]))",
					"hide": false,
					"legendFormat": "__auto",
					"range": true,
					"refId": "B"
				},
				{
					"datasource": {
						"type": "prometheus",
						"uid": "${DS_PROMETHEUS}"
					},
					"editorMode": "builder",
					"expr": "histogram_quantile(0.95, sum by(le) (rate(coderd_api_request_latencies_seconds_bucket[$__rate_interval])))",
					"hide": false,
					"legendFormat": "__auto",
					"range": true,
					"refId": "C"
				}
			],
			"title": "API Requests and Error Rate",
			"type": "timeseries"
		}
	],
	"refresh": "10s",
	"schemaVersion": 38,
	"style": "dark",
	"tags": [],
	"templating": {
		"list": [
			{
				"description": "The key to use for filtering metrics",
				"hide": 2,
				"label": "Filter key",
				"name": "filter_key",
				"query": "${VAR_FILTER_KEY}",
				"skipUrlSync": false,
				"type": "constant",
				"current": {
					"value": "${VAR_FILTER_KEY}",
					"text": "${VAR_FILTER_KEY}",
					"selected": false
				},
				"options": [
					{
						"value": "${VAR_FILTER_KEY}",
						"text": "${VAR_FILTER_KEY}",
						"selected": false
					}
				]
			},
			{
				"description": "The value to use for filtering metrics",
				"hide": 2,
				"label": "Filter value",
				"name": "filter_value",
				"query": "${VAR_FILTER_VALUE}",
				"skipUrlSync": false,
				"type": "constant",
				"current": {
					"value": "${VAR_FILTER_VALUE}",
					"text": "${VAR_FILTER_VALUE}",
					"selected": false
				},
				"options": [
					{
						"value": "${VAR_FILTER_VALUE}",
						"text": "${VAR_FILTER_VALUE}",
						"selected": false
					}
				]
			}
		]
	},
	"time": {
		"from": "now-30m",
		"to": "now"
	},
	"timepicker": {},
	"timezone": "",
	"title": "Coder Dashboard",
	"uid": "cb63c6ac-e392-42a9-a966-ee642b9c997c",
	"version": 10,
	"weekStart": ""
}
