Skip to content

Commit 45e250b

Browse files
csweichelroboquat
authored andcommitted
[observability] Add ws team success criteria dashboard
1 parent 6708a1b commit 45e250b

File tree

2 files changed

+216
-0
lines changed

2 files changed

+216
-0
lines changed

operations/observability/mixins/workspace/dashboards.libsonnet

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,6 @@
1616
'gitpod-component-ws-manager.json': (import 'dashboards/components/ws-manager.json'),
1717
'gitpod-component-ws-proxy.json': (import 'dashboards/components/ws-proxy.json'),
1818
'gitpod-component-ws-scheduler.json': (import 'dashboards/components/ws-scheduler.json'),
19+
'gitpod-workspace-success-criteria.json': (import 'dashboards/success-criteria.json'),
1920
},
2021
}
Lines changed: 215 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,215 @@
1+
{
2+
"annotations": {
3+
"list": [
4+
{
5+
"builtIn": 1,
6+
"datasource": "-- Grafana --",
7+
"enable": true,
8+
"hide": true,
9+
"iconColor": "rgba(0, 211, 255, 1)",
10+
"name": "Annotations & Alerts",
11+
"target": {
12+
"limit": 100,
13+
"matchAny": false,
14+
"tags": [],
15+
"type": "dashboard"
16+
},
17+
"type": "dashboard"
18+
}
19+
]
20+
},
21+
"editable": true,
22+
"fiscalYearStartMonth": 0,
23+
"gnetId": null,
24+
"graphTooltip": 0,
25+
"id": 56,
26+
"links": [],
27+
"liveNow": false,
28+
"panels": [
29+
{
30+
"datasource": "$datasource",
31+
"fieldConfig": {
32+
"defaults": {
33+
"color": {
34+
"fixedColor": "blue",
35+
"mode": "fixed"
36+
},
37+
"custom": {
38+
"axisLabel": "",
39+
"axisPlacement": "auto",
40+
"barAlignment": 0,
41+
"drawStyle": "line",
42+
"fillOpacity": 22,
43+
"gradientMode": "opacity",
44+
"hideFrom": {
45+
"legend": false,
46+
"tooltip": false,
47+
"viz": false
48+
},
49+
"lineInterpolation": "linear",
50+
"lineWidth": 1,
51+
"pointSize": 5,
52+
"scaleDistribution": {
53+
"type": "linear"
54+
},
55+
"showPoints": "auto",
56+
"spanNulls": false,
57+
"stacking": {
58+
"group": "A",
59+
"mode": "none"
60+
},
61+
"thresholdsStyle": {
62+
"mode": "line+area"
63+
}
64+
},
65+
"mappings": [],
66+
"max": 1,
67+
"min": 0.9,
68+
"thresholds": {
69+
"mode": "absolute",
70+
"steps": [
71+
{
72+
"color": "red",
73+
"value": null
74+
},
75+
{
76+
"color": "green",
77+
"value": 0.99
78+
}
79+
]
80+
}
81+
},
82+
"overrides": []
83+
},
84+
"gridPos": {
85+
"h": 22,
86+
"w": 24,
87+
"x": 0,
88+
"y": 0
89+
},
90+
"id": 4,
91+
"options": {
92+
"legend": {
93+
"calcs": [],
94+
"displayMode": "list",
95+
"placement": "bottom"
96+
},
97+
"tooltip": {
98+
"mode": "single"
99+
}
100+
},
101+
"targets": [
102+
{
103+
"exemplar": true,
104+
"expr": "1-((\n (\n sum(rate(gitpod_ws_manager_workspace_stops_total{reason=\"failed\",type!~\"GHOST|PREBUILD\"}[30d]))\n /\n sum(rate(gitpod_ws_manager_workspace_stops_total{type!~\"GHOST|PREBUILD\"}[30d]))\n )\n) + (\n (\n sum(rate(grpc_server_handled_total{grpc_method=\"StartWorkspace\",grpc_code!~\"OK|ResourceExhausted\"}[30d]))\n /\n sum(rate(grpc_server_handled_total{grpc_method=\"StartWorkspace\"}[30d]))\n )\n))",
105+
"interval": "",
106+
"legendFormat": "Success Rate",
107+
"refId": "A"
108+
}
109+
],
110+
"title": "Workspace Success Rate",
111+
"type": "timeseries"
112+
},
113+
{
114+
"datasource": "$datasource",
115+
"fieldConfig": {
116+
"defaults": {
117+
"color": {
118+
"mode": "palette-classic"
119+
},
120+
"custom": {
121+
"axisLabel": "",
122+
"axisPlacement": "auto",
123+
"barAlignment": 0,
124+
"drawStyle": "line",
125+
"fillOpacity": 11,
126+
"gradientMode": "opacity",
127+
"hideFrom": {
128+
"legend": false,
129+
"tooltip": false,
130+
"viz": false
131+
},
132+
"lineInterpolation": "linear",
133+
"lineWidth": 1,
134+
"pointSize": 5,
135+
"scaleDistribution": {
136+
"type": "linear"
137+
},
138+
"showPoints": "auto",
139+
"spanNulls": false,
140+
"stacking": {
141+
"group": "A",
142+
"mode": "none"
143+
},
144+
"thresholdsStyle": {
145+
"mode": "line+area"
146+
}
147+
},
148+
"mappings": [],
149+
"max": 200,
150+
"thresholds": {
151+
"mode": "absolute",
152+
"steps": [
153+
{
154+
"color": "green",
155+
"value": null
156+
},
157+
{
158+
"color": "red",
159+
"value": 30
160+
}
161+
]
162+
},
163+
"unit": "s"
164+
},
165+
"overrides": []
166+
},
167+
"gridPos": {
168+
"h": 27,
169+
"w": 24,
170+
"x": 0,
171+
"y": 22
172+
},
173+
"id": 2,
174+
"options": {
175+
"legend": {
176+
"calcs": [],
177+
"displayMode": "list",
178+
"placement": "bottom"
179+
},
180+
"tooltip": {
181+
"mode": "single"
182+
}
183+
},
184+
"targets": [
185+
{
186+
"exemplar": true,
187+
"expr": "histogram_quantile(0.95, \n sum(\n rate(gitpod_ws_manager_workspace_startup_seconds_bucket{type!=\"GHOST\",type!=\"PREBUILD\"}[1d])\n ) by (le, cluster)\n)",
188+
"interval": "",
189+
"legendFormat": "{{cluster}}",
190+
"refId": "A"
191+
}
192+
],
193+
"title": "Workspace Startup Time (95% case)",
194+
"type": "timeseries"
195+
}
196+
],
197+
"schemaVersion": 31,
198+
"style": "dark",
199+
"tags": [
200+
"workspace",
201+
"success criteria"
202+
],
203+
"templating": {
204+
"list": []
205+
},
206+
"time": {
207+
"from": "now-7d",
208+
"to": "now"
209+
},
210+
"timepicker": {},
211+
"timezone": "",
212+
"title": "Success Criteria",
213+
"uid": "jgjwvIc7k",
214+
"version": 2
215+
}

0 commit comments

Comments
 (0)