You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Ignore non-production clusters (i.e. `prod-meta-.*` and `ephemeral.*`)
* Create a view that represents the overall P50 and P95 workspace startup times
* Group "By Cluster" views in a collapsable row
"expr": "1-((\n (\n (sum(rate(gitpod_ws_manager_workspace_stops_total{reason=\"failed\"}[1d])) OR on() vector(0))\n\/\n sum(rate(gitpod_ws_manager_workspace_stops_total[1d]))\n )\n) + (\n (\n (sum(rate(grpc_server_handled_total{grpc_method=\"StartWorkspace\",grpc_code!~\"OK|ResourceExhausted\"}[1d])) OR on() vector(0))\n\/\n sum(rate(grpc_server_handled_total{grpc_method=\"StartWorkspace\"}[1d]))\n )\n))",
114
+
"expr": "1-((\n (\n (sum(rate(gitpod_ws_manager_workspace_stops_total{reason=\"failed\",cluster!~\"prod-meta-.*|ephemeral.*\"}[1d])) OR on() vector(0))\n /\n sum(rate(gitpod_ws_manager_workspace_stops_total{cluster!~\"prod-meta-.*|ephemeral.*\"}[1d]))\n )\n) + (\n (\n (sum(rate(grpc_server_handled_total{grpc_method=\"StartWorkspace\",grpc_code!~\"OK|ResourceExhausted\",cluster!~\"prod-meta-.*|ephemeral.*\"}[1d])) OR on() vector(0))\n /\n sum(rate(grpc_server_handled_total{grpc_method=\"StartWorkspace\",cluster!~\"prod-meta-.*|ephemeral.*\"}[1d]))\n )\n))",
112
115
"instant": false,
113
116
"interval": "",
114
117
"legendFormat": "Success Rate",
115
118
"refId": "A"
116
119
}
117
120
],
118
-
"title": "Workspace Success Rate Overall",
121
+
"title": "Workspace Success Rate",
119
122
"type": "timeseries"
120
123
},
124
+
{
125
+
"datasource": {
126
+
"type": "prometheus",
127
+
"uid": "${datasource}"
128
+
},
129
+
"fieldConfig": {
130
+
"defaults": {
131
+
"color": {
132
+
"mode": "palette-classic"
133
+
},
134
+
"custom": {
135
+
"axisLabel": "",
136
+
"axisPlacement": "auto",
137
+
"barAlignment": 0,
138
+
"drawStyle": "line",
139
+
"fillOpacity": 11,
140
+
"gradientMode": "opacity",
141
+
"hideFrom": {
142
+
"legend": false,
143
+
"tooltip": false,
144
+
"viz": false
145
+
},
146
+
"lineInterpolation": "linear",
147
+
"lineWidth": 1,
148
+
"pointSize": 5,
149
+
"scaleDistribution": {
150
+
"type": "linear"
151
+
},
152
+
"showPoints": "auto",
153
+
"spanNulls": false,
154
+
"stacking": {
155
+
"group": "A",
156
+
"mode": "none"
157
+
},
158
+
"thresholdsStyle": {
159
+
"mode": "line+area"
160
+
}
161
+
},
162
+
"mappings": [],
163
+
"max": 200,
164
+
"thresholds": {
165
+
"mode": "absolute",
166
+
"steps": [
167
+
{
168
+
"color": "green",
169
+
"value": null
170
+
},
171
+
{
172
+
"color": "red",
173
+
"value": 40
174
+
}
175
+
]
176
+
},
177
+
"unit": "s"
178
+
},
179
+
"overrides": []
180
+
},
181
+
"gridPos": {
182
+
"h": 9,
183
+
"w": 12,
184
+
"x": 12,
185
+
"y": 0
186
+
},
187
+
"id": 2,
188
+
"options": {
189
+
"legend": {
190
+
"calcs": [],
191
+
"displayMode": "list",
192
+
"placement": "bottom"
193
+
},
194
+
"tooltip": {
195
+
"mode": "single",
196
+
"sort": "none"
197
+
}
198
+
},
199
+
"targets": [
200
+
{
201
+
"datasource": {
202
+
"type": "prometheus",
203
+
"uid": "${datasource}"
204
+
},
205
+
"editorMode": "code",
206
+
"exemplar": true,
207
+
"expr": "histogram_quantile(\n 0.95, \n sum(\n rate(gitpod_ws_manager_workspace_startup_seconds_bucket{type!=\"PREBUILD\",cluster!~\"prod-meta.*|ephemeral.*\"}[1d])\n ) by (le)\n )",
208
+
"interval": "",
209
+
"legendFormat": "P95",
210
+
"range": true,
211
+
"refId": "A"
212
+
},
213
+
{
214
+
"datasource": {
215
+
"type": "prometheus",
216
+
"uid": "${datasource}"
217
+
},
218
+
"editorMode": "code",
219
+
"expr": "histogram_quantile(\n 0.5, \n sum(\n rate(gitpod_ws_manager_workspace_startup_seconds_bucket{type!=\"PREBUILD\",cluster!~\"prod-meta.*|ephemeral.*\"}[1d])\n ) by (le)\n )",
220
+
"hide": false,
221
+
"legendFormat": "P50",
222
+
"range": true,
223
+
"refId": "B"
224
+
}
225
+
],
226
+
"title": "Workspace Startup Time",
227
+
"type": "timeseries"
228
+
},
229
+
{
230
+
"collapsed": false,
231
+
"gridPos": {
232
+
"h": 1,
233
+
"w": 24,
234
+
"x": 0,
235
+
"y": 9
236
+
},
237
+
"id": 8,
238
+
"panels": [],
239
+
"title": "By Cluster",
240
+
"type": "row"
241
+
},
121
242
{
122
243
"datasource": {
123
244
"type": "prometheus",
@@ -180,7 +301,7 @@
180
301
"h": 22,
181
302
"w": 24,
182
303
"x": 0,
183
-
"y": 22
304
+
"y": 10
184
305
},
185
306
"id": 5,
186
307
"options": {
@@ -201,14 +322,14 @@
201
322
"uid": "${datasource}"
202
323
},
203
324
"exemplar": false,
204
-
"expr": "1-((\n (\n (sum by (cluster)(rate(gitpod_ws_manager_workspace_stops_total{reason=\"failed\"}[1d])) OR on() vector(0))\n\/\n sum by (cluster)(rate(gitpod_ws_manager_workspace_stops_total[1d]))\n )\n) + (\n (\n (sum by (cluster)(rate(grpc_server_handled_total{grpc_method=\"StartWorkspace\",grpc_code!~\"OK|ResourceExhausted\"}[1d])) OR on() vector(0))\n\/\n sum by (cluster)(rate(grpc_server_handled_total{grpc_method=\"StartWorkspace\"}[1d]))\n )\n))",
325
+
"expr": "1-((\n (\n (sum by (cluster)(rate(gitpod_ws_manager_workspace_stops_total{reason=\"failed\",cluster!~\"prod-meta-.*|ephemeral.*\"}[1d])) OR on() vector(0))\n /\n sum by (cluster)(rate(gitpod_ws_manager_workspace_stops_total{cluster!~\"prod-meta-.*|ephemeral.*\"}[1d]))\n )\n) + (\n (\n (sum by (cluster)(rate(grpc_server_handled_total{grpc_method=\"StartWorkspace\",grpc_code!~\"OK|ResourceExhausted\",cluster!~\"prod-meta-.*|ephemeral.*\"}[1d])) OR on() vector(0))\n /\n sum by (cluster)(rate(grpc_server_handled_total{grpc_method=\"StartWorkspace\",cluster!~\"prod-meta-.*|ephemeral.*\"}[1d]))\n )\n))",
0 commit comments