Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
gitpod-io
GitHub Repository: gitpod-io/gitpod
Path: blob/main/operations/observability/mixins/meta/dashboards/components/server.json
2501 views
1
{
2
"annotations": {
3
"list": [
4
{
5
"builtIn": 1,
6
"datasource": {
7
"type": "datasource",
8
"uid": "grafana"
9
},
10
"enable": true,
11
"hide": true,
12
"iconColor": "rgba(0, 211, 255, 1)",
13
"name": "Annotations & Alerts",
14
"target": {
15
"limit": 100,
16
"matchAny": false,
17
"tags": [],
18
"type": "dashboard"
19
},
20
"type": "dashboard"
21
}
22
]
23
},
24
"editable": true,
25
"fiscalYearStartMonth": 0,
26
"graphTooltip": 1,
27
"links": [],
28
"liveNow": false,
29
"panels": [
30
{
31
"collapsed": true,
32
"gridPos": {
33
"h": 1,
34
"w": 24,
35
"x": 0,
36
"y": 0
37
},
38
"id": 72,
39
"panels": [
40
{
41
"datasource": {
42
"uid": "$datasource"
43
},
44
"fieldConfig": {
45
"defaults": {
46
"color": {
47
"mode": "palette-classic"
48
},
49
"custom": {
50
"axisCenteredZero": false,
51
"axisColorMode": "text",
52
"axisLabel": "",
53
"axisPlacement": "auto",
54
"barAlignment": 0,
55
"drawStyle": "line",
56
"fillOpacity": 0,
57
"gradientMode": "none",
58
"hideFrom": {
59
"legend": false,
60
"tooltip": false,
61
"viz": false
62
},
63
"lineInterpolation": "linear",
64
"lineWidth": 1,
65
"pointSize": 5,
66
"scaleDistribution": {
67
"type": "linear"
68
},
69
"showPoints": "auto",
70
"spanNulls": false,
71
"stacking": {
72
"group": "A",
73
"mode": "none"
74
},
75
"thresholdsStyle": {
76
"mode": "off"
77
}
78
},
79
"mappings": [],
80
"thresholds": {
81
"mode": "absolute",
82
"steps": [
83
{
84
"color": "green"
85
},
86
{
87
"color": "red",
88
"value": 80
89
}
90
]
91
},
92
"unit": "short"
93
},
94
"overrides": []
95
},
96
"gridPos": {
97
"h": 6,
98
"w": 12,
99
"x": 0,
100
"y": 9
101
},
102
"id": 63,
103
"options": {
104
"legend": {
105
"calcs": [],
106
"displayMode": "list",
107
"placement": "bottom",
108
"showLegend": true
109
},
110
"tooltip": {
111
"mode": "single",
112
"sort": "none"
113
}
114
},
115
"targets": [
116
{
117
"datasource": {
118
"uid": "$datasource"
119
},
120
"exemplar": true,
121
"expr": "sum (gitpod_version_info{}) by (cluster, gitpod_version)",
122
"interval": "",
123
"legendFormat": "{{ cluster }}: {{ gitpod_version }}",
124
"refId": "A"
125
}
126
],
127
"title": "Version",
128
"type": "timeseries"
129
}
130
],
131
"title": "Version",
132
"type": "row"
133
},
134
{
135
"collapsed": false,
136
"datasource": {
137
"type": "datasource",
138
"uid": "grafana"
139
},
140
"gridPos": {
141
"h": 1,
142
"w": 24,
143
"x": 0,
144
"y": 1
145
},
146
"id": 42,
147
"panels": [],
148
"targets": [
149
{
150
"datasource": {
151
"type": "datasource",
152
"uid": "grafana"
153
},
154
"refId": "A"
155
}
156
],
157
"title": "Websocket API",
158
"type": "row"
159
},
160
{
161
"datasource": {
162
"type": "prometheus",
163
"uid": "$datasource"
164
},
165
"fieldConfig": {
166
"defaults": {
167
"color": {
168
"mode": "palette-classic"
169
},
170
"custom": {
171
"axisCenteredZero": false,
172
"axisColorMode": "text",
173
"axisLabel": "",
174
"axisPlacement": "auto",
175
"barAlignment": 0,
176
"drawStyle": "line",
177
"fillOpacity": 0,
178
"gradientMode": "none",
179
"hideFrom": {
180
"legend": false,
181
"tooltip": false,
182
"viz": false
183
},
184
"lineInterpolation": "linear",
185
"lineWidth": 1,
186
"pointSize": 5,
187
"scaleDistribution": {
188
"type": "linear"
189
},
190
"showPoints": "never",
191
"spanNulls": false,
192
"stacking": {
193
"group": "A",
194
"mode": "none"
195
},
196
"thresholdsStyle": {
197
"mode": "off"
198
}
199
},
200
"mappings": [],
201
"thresholds": {
202
"mode": "absolute",
203
"steps": [
204
{
205
"color": "green",
206
"value": null
207
}
208
]
209
},
210
"unit": "reqps"
211
},
212
"overrides": []
213
},
214
"gridPos": {
215
"h": 9,
216
"w": 12,
217
"x": 0,
218
"y": 2
219
},
220
"id": 44,
221
"options": {
222
"legend": {
223
"calcs": [],
224
"displayMode": "list",
225
"placement": "right",
226
"showLegend": true
227
},
228
"tooltip": {
229
"mode": "single",
230
"sort": "none"
231
}
232
},
233
"pluginVersion": "9.3.2",
234
"targets": [
235
{
236
"datasource": {
237
"uid": "$datasource"
238
},
239
"editorMode": "code",
240
"exemplar": true,
241
"expr": "sum(rate(gitpod_server_api_calls_total{cluster=~\"$cluster\", pod=~\"$pod\", method=~\"$method\"}[5m])) by (method)",
242
"interval": "",
243
"legendFormat": "{{method}}",
244
"queryType": "randomWalk",
245
"range": true,
246
"refId": "A"
247
}
248
],
249
"title": "API Request Rate [5m]",
250
"type": "timeseries"
251
},
252
{
253
"datasource": {
254
"type": "prometheus",
255
"uid": "${datasource}"
256
},
257
"description": "A histogram quantile of the API requests grouped by methods and bucket (duration) size.",
258
"fieldConfig": {
259
"defaults": {
260
"color": {
261
"mode": "palette-classic"
262
},
263
"custom": {
264
"axisCenteredZero": false,
265
"axisColorMode": "text",
266
"axisLabel": "",
267
"axisPlacement": "auto",
268
"barAlignment": 0,
269
"drawStyle": "line",
270
"fillOpacity": 0,
271
"gradientMode": "none",
272
"hideFrom": {
273
"legend": false,
274
"tooltip": false,
275
"viz": false
276
},
277
"lineInterpolation": "linear",
278
"lineStyle": {
279
"fill": "solid"
280
},
281
"lineWidth": 1,
282
"pointSize": 5,
283
"scaleDistribution": {
284
"type": "linear"
285
},
286
"showPoints": "auto",
287
"spanNulls": false,
288
"stacking": {
289
"group": "A",
290
"mode": "none"
291
},
292
"thresholdsStyle": {
293
"mode": "off"
294
}
295
},
296
"mappings": [],
297
"thresholds": {
298
"mode": "absolute",
299
"steps": [
300
{
301
"color": "green",
302
"value": null
303
},
304
{
305
"color": "red",
306
"value": 80
307
}
308
]
309
},
310
"unit": "s"
311
},
312
"overrides": []
313
},
314
"gridPos": {
315
"h": 9,
316
"w": 12,
317
"x": 12,
318
"y": 2
319
},
320
"id": 68,
321
"options": {
322
"legend": {
323
"calcs": [],
324
"displayMode": "list",
325
"placement": "right",
326
"showLegend": true
327
},
328
"tooltip": {
329
"mode": "single",
330
"sort": "none"
331
}
332
},
333
"pluginVersion": "8.3.3",
334
"targets": [
335
{
336
"datasource": {
337
"type": "prometheus",
338
"uid": "${datasource}"
339
},
340
"editorMode": "code",
341
"exemplar": false,
342
"expr": "histogram_quantile(0.95, sum (rate(gitpod_server_api_calls_duration_seconds_bucket{cluster=~\"$cluster\", pod=~\"$pod\", method=~\"$method\"}[5m])) by (method, le))",
343
"format": "time_series",
344
"hide": true,
345
"interval": "",
346
"legendFormat": "95% {{method}} {{le}}",
347
"range": true,
348
"refId": "A"
349
},
350
{
351
"datasource": {
352
"type": "prometheus",
353
"uid": "${datasource}"
354
},
355
"editorMode": "code",
356
"exemplar": false,
357
"expr": "histogram_quantile(0.5, sum (rate(gitpod_server_api_calls_duration_seconds_bucket{cluster=~\"$cluster\", pod=~\"$pod\", method=~\"$method\"}[5m])) by (method, le))",
358
"format": "time_series",
359
"hide": false,
360
"interval": "",
361
"legendFormat": "50% {{method}} {{le}}",
362
"range": true,
363
"refId": "C"
364
}
365
],
366
"title": "API request duration 50th",
367
"type": "timeseries"
368
},
369
{
370
"datasource": {
371
"type": "prometheus",
372
"uid": "$datasource"
373
},
374
"fieldConfig": {
375
"defaults": {
376
"color": {
377
"mode": "palette-classic"
378
},
379
"custom": {
380
"axisCenteredZero": false,
381
"axisColorMode": "text",
382
"axisLabel": "",
383
"axisPlacement": "auto",
384
"barAlignment": 0,
385
"drawStyle": "line",
386
"fillOpacity": 0,
387
"gradientMode": "none",
388
"hideFrom": {
389
"legend": false,
390
"tooltip": false,
391
"viz": false
392
},
393
"lineInterpolation": "linear",
394
"lineWidth": 1,
395
"pointSize": 5,
396
"scaleDistribution": {
397
"type": "linear"
398
},
399
"showPoints": "never",
400
"spanNulls": false,
401
"stacking": {
402
"group": "A",
403
"mode": "none"
404
},
405
"thresholdsStyle": {
406
"mode": "off"
407
}
408
},
409
"decimals": 2,
410
"mappings": [],
411
"min": 0,
412
"thresholds": {
413
"mode": "absolute",
414
"steps": [
415
{
416
"color": "green",
417
"value": null
418
},
419
{
420
"color": "red",
421
"value": 80
422
}
423
]
424
},
425
"unit": "reqps"
426
},
427
"overrides": []
428
},
429
"gridPos": {
430
"h": 9,
431
"w": 12,
432
"x": 0,
433
"y": 11
434
},
435
"id": 45,
436
"options": {
437
"legend": {
438
"calcs": [],
439
"displayMode": "list",
440
"placement": "right",
441
"showLegend": true
442
},
443
"tooltip": {
444
"mode": "multi",
445
"sort": "desc"
446
}
447
},
448
"pluginVersion": "9.3.2",
449
"targets": [
450
{
451
"datasource": {
452
"uid": "$datasource"
453
},
454
"editorMode": "code",
455
"expr": "sum(\n rate(gitpod_server_api_calls_total{cluster=~\"$cluster\", pod=~\"$pod\", method=~\"$method\", statusCode!~\"2.*|3.*|4.*\"}[5m])\n) by (method)",
456
"interval": "",
457
"legendFormat": "{{method}}",
458
"queryType": "randomWalk",
459
"range": true,
460
"refId": "A"
461
}
462
],
463
"title": "Server Errors [5m]",
464
"type": "timeseries"
465
},
466
{
467
"datasource": {
468
"type": "prometheus",
469
"uid": "${datasource}"
470
},
471
"description": "A histogram quantile of the API requests grouped by methods and bucket (duration) size.",
472
"fieldConfig": {
473
"defaults": {
474
"color": {
475
"mode": "palette-classic"
476
},
477
"custom": {
478
"axisCenteredZero": false,
479
"axisColorMode": "text",
480
"axisLabel": "",
481
"axisPlacement": "auto",
482
"barAlignment": 0,
483
"drawStyle": "line",
484
"fillOpacity": 0,
485
"gradientMode": "none",
486
"hideFrom": {
487
"legend": false,
488
"tooltip": false,
489
"viz": false
490
},
491
"lineInterpolation": "linear",
492
"lineStyle": {
493
"fill": "solid"
494
},
495
"lineWidth": 1,
496
"pointSize": 5,
497
"scaleDistribution": {
498
"type": "linear"
499
},
500
"showPoints": "auto",
501
"spanNulls": false,
502
"stacking": {
503
"group": "A",
504
"mode": "none"
505
},
506
"thresholdsStyle": {
507
"mode": "off"
508
}
509
},
510
"mappings": [],
511
"thresholds": {
512
"mode": "absolute",
513
"steps": [
514
{
515
"color": "green",
516
"value": null
517
},
518
{
519
"color": "red",
520
"value": 80
521
}
522
]
523
},
524
"unit": "s"
525
},
526
"overrides": []
527
},
528
"gridPos": {
529
"h": 9,
530
"w": 12,
531
"x": 12,
532
"y": 11
533
},
534
"id": 66,
535
"options": {
536
"legend": {
537
"calcs": [],
538
"displayMode": "list",
539
"placement": "right",
540
"showLegend": true
541
},
542
"tooltip": {
543
"mode": "single",
544
"sort": "none"
545
}
546
},
547
"pluginVersion": "8.3.3",
548
"targets": [
549
{
550
"datasource": {
551
"type": "prometheus",
552
"uid": "${datasource}"
553
},
554
"editorMode": "code",
555
"exemplar": false,
556
"expr": "histogram_quantile(0.95, sum (rate(gitpod_server_api_calls_duration_seconds_bucket{cluster=~\"$cluster\", pod=~\"$pod\", method=~\"$method\"}[5m])) by (method, le))",
557
"format": "time_series",
558
"hide": false,
559
"interval": "",
560
"legendFormat": "95% {{method}} {{le}}",
561
"range": true,
562
"refId": "A"
563
},
564
{
565
"datasource": {
566
"type": "prometheus",
567
"uid": "${datasource}"
568
},
569
"editorMode": "code",
570
"exemplar": false,
571
"expr": "histogram_quantile(0.5, sum (rate(gitpod_server_api_calls_duration_seconds_bucket{cluster=~\"$cluster\", pod=~\"$pod\", method=~\"$method\"}[5m])) by (method, le))",
572
"format": "time_series",
573
"hide": true,
574
"interval": "",
575
"legendFormat": "50% {{method}} {{le}}",
576
"range": true,
577
"refId": "C"
578
}
579
],
580
"title": "API request duration 95th",
581
"type": "timeseries"
582
},
583
{
584
"datasource": {
585
"type": "prometheus",
586
"uid": "$datasource"
587
},
588
"fieldConfig": {
589
"defaults": {
590
"color": {
591
"mode": "palette-classic"
592
},
593
"custom": {
594
"axisCenteredZero": false,
595
"axisColorMode": "text",
596
"axisLabel": "",
597
"axisPlacement": "auto",
598
"barAlignment": 0,
599
"drawStyle": "line",
600
"fillOpacity": 0,
601
"gradientMode": "none",
602
"hideFrom": {
603
"legend": false,
604
"tooltip": false,
605
"viz": false
606
},
607
"lineInterpolation": "linear",
608
"lineWidth": 1,
609
"pointSize": 5,
610
"scaleDistribution": {
611
"type": "linear"
612
},
613
"showPoints": "never",
614
"spanNulls": false,
615
"stacking": {
616
"group": "A",
617
"mode": "none"
618
},
619
"thresholdsStyle": {
620
"mode": "off"
621
}
622
},
623
"mappings": [],
624
"thresholds": {
625
"mode": "absolute",
626
"steps": [
627
{
628
"color": "green",
629
"value": null
630
},
631
{
632
"color": "red",
633
"value": 80
634
}
635
]
636
},
637
"unit": "reqps"
638
},
639
"overrides": []
640
},
641
"gridPos": {
642
"h": 9,
643
"w": 12,
644
"x": 0,
645
"y": 20
646
},
647
"id": 67,
648
"options": {
649
"legend": {
650
"calcs": [],
651
"displayMode": "list",
652
"placement": "right",
653
"showLegend": true
654
},
655
"tooltip": {
656
"mode": "multi",
657
"sort": "desc"
658
}
659
},
660
"pluginVersion": "9.3.2",
661
"targets": [
662
{
663
"datasource": {
664
"uid": "$datasource"
665
},
666
"editorMode": "code",
667
"expr": "sum(\n rate(gitpod_server_api_calls_total{cluster=~\"$cluster\", pod=~\"$pod\", method=~\"$method\", statusCode=~\"4.*\"}[5m])\n) by (method, statusCode)",
668
"interval": "",
669
"legendFormat": "{{method}} code: {{statusCode}}",
670
"queryType": "randomWalk",
671
"range": true,
672
"refId": "A"
673
}
674
],
675
"title": "User Errors [5m]",
676
"type": "timeseries"
677
},
678
{
679
"datasource": {
680
"type": "prometheus",
681
"uid": "$datasource"
682
},
683
"fieldConfig": {
684
"defaults": {
685
"color": {
686
"mode": "palette-classic"
687
},
688
"custom": {
689
"axisCenteredZero": false,
690
"axisColorMode": "text",
691
"axisLabel": "",
692
"axisPlacement": "auto",
693
"barAlignment": 0,
694
"drawStyle": "line",
695
"fillOpacity": 0,
696
"gradientMode": "none",
697
"hideFrom": {
698
"legend": false,
699
"tooltip": false,
700
"viz": false
701
},
702
"lineInterpolation": "linear",
703
"lineWidth": 1,
704
"pointSize": 5,
705
"scaleDistribution": {
706
"type": "linear"
707
},
708
"showPoints": "never",
709
"spanNulls": true,
710
"stacking": {
711
"group": "A",
712
"mode": "none"
713
},
714
"thresholdsStyle": {
715
"mode": "off"
716
}
717
},
718
"mappings": [],
719
"thresholds": {
720
"mode": "absolute",
721
"steps": [
722
{
723
"color": "green",
724
"value": null
725
},
726
{
727
"color": "red",
728
"value": 80
729
}
730
]
731
},
732
"unit": "reqps"
733
},
734
"overrides": []
735
},
736
"gridPos": {
737
"h": 9,
738
"w": 12,
739
"x": 12,
740
"y": 20
741
},
742
"id": 46,
743
"options": {
744
"legend": {
745
"calcs": [],
746
"displayMode": "list",
747
"placement": "right",
748
"showLegend": true
749
},
750
"tooltip": {
751
"mode": "single",
752
"sort": "none"
753
}
754
},
755
"pluginVersion": "8.3.1",
756
"targets": [
757
{
758
"datasource": {
759
"type": "prometheus",
760
"uid": "${datasource}"
761
},
762
"editorMode": "code",
763
"exemplar": true,
764
"expr": "sum(rate(gitpod_server_api_calls_total{cluster=~\"$cluster\", pod=~\"$pod\", method=~\"$method\", statusCode=\"429\"}[5m])) by (method)",
765
"interval": "",
766
"legendFormat": "{{method}}",
767
"queryType": "randomWalk",
768
"range": true,
769
"refId": "A"
770
}
771
],
772
"title": "API Saturation (Rate Limited requests)",
773
"type": "timeseries"
774
},
775
{
776
"collapsed": true,
777
"gridPos": {
778
"h": 1,
779
"w": 24,
780
"x": 0,
781
"y": 29
782
},
783
"id": 70,
784
"panels": [
785
{
786
"datasource": {
787
"type": "prometheus",
788
"uid": "$datasource"
789
},
790
"description": "",
791
"fieldConfig": {
792
"defaults": {
793
"color": {
794
"mode": "palette-classic"
795
},
796
"custom": {
797
"axisCenteredZero": false,
798
"axisColorMode": "text",
799
"axisLabel": "",
800
"axisPlacement": "auto",
801
"barAlignment": 0,
802
"drawStyle": "line",
803
"fillOpacity": 0,
804
"gradientMode": "none",
805
"hideFrom": {
806
"legend": false,
807
"tooltip": false,
808
"viz": false
809
},
810
"lineInterpolation": "linear",
811
"lineStyle": {
812
"fill": "solid"
813
},
814
"lineWidth": 1,
815
"pointSize": 5,
816
"scaleDistribution": {
817
"type": "linear"
818
},
819
"showPoints": "auto",
820
"spanNulls": false,
821
"stacking": {
822
"group": "A",
823
"mode": "none"
824
},
825
"thresholdsStyle": {
826
"mode": "off"
827
}
828
},
829
"mappings": [],
830
"thresholds": {
831
"mode": "absolute",
832
"steps": [
833
{
834
"color": "green",
835
"value": null
836
},
837
{
838
"color": "red",
839
"value": 80
840
}
841
]
842
}
843
},
844
"overrides": []
845
},
846
"gridPos": {
847
"h": 9,
848
"w": 12,
849
"x": 0,
850
"y": 11
851
},
852
"id": 57,
853
"options": {
854
"legend": {
855
"calcs": [],
856
"displayMode": "list",
857
"placement": "bottom",
858
"showLegend": true
859
},
860
"tooltip": {
861
"mode": "multi",
862
"sort": "none"
863
}
864
},
865
"targets": [
866
{
867
"datasource": {
868
"uid": "$datasource"
869
},
870
"editorMode": "code",
871
"exemplar": true,
872
"expr": "sum(server_websocket_connection_count{cluster=~\"$cluster\"}) by (cluster)",
873
"interval": "",
874
"legendFormat": "{{cluster}} {{pod}}",
875
"range": true,
876
"refId": "A"
877
}
878
],
879
"title": "Websocket connections",
880
"type": "timeseries"
881
},
882
{
883
"datasource": {
884
"uid": "$datasource"
885
},
886
"description": "",
887
"fieldConfig": {
888
"defaults": {
889
"color": {
890
"mode": "palette-classic"
891
},
892
"custom": {
893
"axisCenteredZero": false,
894
"axisColorMode": "text",
895
"axisLabel": "",
896
"axisPlacement": "auto",
897
"barAlignment": 0,
898
"drawStyle": "line",
899
"fillOpacity": 0,
900
"gradientMode": "none",
901
"hideFrom": {
902
"legend": false,
903
"tooltip": false,
904
"viz": false
905
},
906
"lineInterpolation": "linear",
907
"lineStyle": {
908
"fill": "solid"
909
},
910
"lineWidth": 1,
911
"pointSize": 5,
912
"scaleDistribution": {
913
"type": "linear"
914
},
915
"showPoints": "auto",
916
"spanNulls": false,
917
"stacking": {
918
"group": "A",
919
"mode": "none"
920
},
921
"thresholdsStyle": {
922
"mode": "off"
923
}
924
},
925
"mappings": [],
926
"thresholds": {
927
"mode": "absolute",
928
"steps": [
929
{
930
"color": "green",
931
"value": null
932
},
933
{
934
"color": "red",
935
"value": 80
936
}
937
]
938
}
939
},
940
"overrides": []
941
},
942
"gridPos": {
943
"h": 9,
944
"w": 12,
945
"x": 12,
946
"y": 11
947
},
948
"id": 64,
949
"options": {
950
"legend": {
951
"calcs": [],
952
"displayMode": "list",
953
"placement": "bottom",
954
"showLegend": true
955
},
956
"tooltip": {
957
"mode": "multi",
958
"sort": "none"
959
}
960
},
961
"targets": [
962
{
963
"datasource": {
964
"uid": "$datasource"
965
},
966
"exemplar": true,
967
"expr": "sum(server_websocket_connection_count{cluster=~\"$cluster\", pod=~\"$pod\"}) by (cluster, clientType)",
968
"interval": "",
969
"legendFormat": "{{cluster}} {{clientType}}",
970
"refId": "A"
971
}
972
],
973
"title": "Websocket Clients",
974
"type": "timeseries"
975
},
976
{
977
"datasource": {
978
"type": "prometheus",
979
"uid": "$datasource"
980
},
981
"description": "",
982
"fieldConfig": {
983
"defaults": {
984
"color": {
985
"mode": "palette-classic"
986
},
987
"custom": {
988
"axisCenteredZero": false,
989
"axisColorMode": "text",
990
"axisLabel": "",
991
"axisPlacement": "auto",
992
"barAlignment": 0,
993
"drawStyle": "line",
994
"fillOpacity": 0,
995
"gradientMode": "none",
996
"hideFrom": {
997
"legend": false,
998
"tooltip": false,
999
"viz": false
1000
},
1001
"lineInterpolation": "linear",
1002
"lineWidth": 1,
1003
"pointSize": 5,
1004
"scaleDistribution": {
1005
"type": "linear"
1006
},
1007
"showPoints": "auto",
1008
"spanNulls": false,
1009
"stacking": {
1010
"group": "A",
1011
"mode": "none"
1012
},
1013
"thresholdsStyle": {
1014
"mode": "off"
1015
}
1016
},
1017
"mappings": [],
1018
"thresholds": {
1019
"mode": "absolute",
1020
"steps": [
1021
{
1022
"color": "green",
1023
"value": null
1024
},
1025
{
1026
"color": "red",
1027
"value": 80
1028
}
1029
]
1030
}
1031
},
1032
"overrides": []
1033
},
1034
"gridPos": {
1035
"h": 8,
1036
"w": 12,
1037
"x": 0,
1038
"y": 20
1039
},
1040
"id": 59,
1041
"options": {
1042
"legend": {
1043
"calcs": [],
1044
"displayMode": "list",
1045
"placement": "right",
1046
"showLegend": true
1047
},
1048
"tooltip": {
1049
"mode": "single",
1050
"sort": "none"
1051
}
1052
},
1053
"targets": [
1054
{
1055
"datasource": {
1056
"uid": "$datasource"
1057
},
1058
"editorMode": "code",
1059
"exemplar": true,
1060
"expr": "sum(rate(gitpod_server_api_connections_total{cluster=~\"$cluster\", pod=~\"$pod\"}[5m])) by (cluster)",
1061
"interval": "",
1062
"legendFormat": "{{cluster}}",
1063
"range": true,
1064
"refId": "A"
1065
}
1066
],
1067
"title": "Server API connections rate",
1068
"type": "timeseries"
1069
},
1070
{
1071
"datasource": {
1072
"type": "prometheus",
1073
"uid": "$datasource"
1074
},
1075
"description": "",
1076
"fieldConfig": {
1077
"defaults": {
1078
"color": {
1079
"mode": "palette-classic"
1080
},
1081
"custom": {
1082
"axisCenteredZero": false,
1083
"axisColorMode": "text",
1084
"axisLabel": "",
1085
"axisPlacement": "auto",
1086
"barAlignment": 0,
1087
"drawStyle": "line",
1088
"fillOpacity": 0,
1089
"gradientMode": "none",
1090
"hideFrom": {
1091
"legend": false,
1092
"tooltip": false,
1093
"viz": false
1094
},
1095
"lineInterpolation": "linear",
1096
"lineWidth": 1,
1097
"pointSize": 5,
1098
"scaleDistribution": {
1099
"type": "linear"
1100
},
1101
"showPoints": "auto",
1102
"spanNulls": false,
1103
"stacking": {
1104
"group": "A",
1105
"mode": "none"
1106
},
1107
"thresholdsStyle": {
1108
"mode": "off"
1109
}
1110
},
1111
"mappings": [],
1112
"thresholds": {
1113
"mode": "absolute",
1114
"steps": [
1115
{
1116
"color": "green",
1117
"value": null
1118
},
1119
{
1120
"color": "red",
1121
"value": 80
1122
}
1123
]
1124
}
1125
},
1126
"overrides": []
1127
},
1128
"gridPos": {
1129
"h": 8,
1130
"w": 12,
1131
"x": 12,
1132
"y": 20
1133
},
1134
"id": 60,
1135
"options": {
1136
"legend": {
1137
"calcs": [],
1138
"displayMode": "list",
1139
"placement": "right",
1140
"showLegend": true
1141
},
1142
"tooltip": {
1143
"mode": "single",
1144
"sort": "none"
1145
}
1146
},
1147
"targets": [
1148
{
1149
"datasource": {
1150
"uid": "$datasource"
1151
},
1152
"editorMode": "code",
1153
"exemplar": true,
1154
"expr": "sum(rate(gitpod_server_api_connections_closed_total{cluster=~\"$cluster\"}[5m])) by (cluster)",
1155
"hide": false,
1156
"interval": "",
1157
"legendFormat": "{{cluster}} {{pod}}",
1158
"range": true,
1159
"refId": "B"
1160
}
1161
],
1162
"title": "Server API connections closed rate",
1163
"type": "timeseries"
1164
}
1165
],
1166
"title": "Websocket Connections",
1167
"type": "row"
1168
},
1169
{
1170
"collapsed": true,
1171
"datasource": {
1172
"type": "datasource",
1173
"uid": "grafana"
1174
},
1175
"gridPos": {
1176
"h": 1,
1177
"w": 24,
1178
"x": 0,
1179
"y": 30
1180
},
1181
"id": 50,
1182
"panels": [
1183
{
1184
"aliasColors": {},
1185
"bars": false,
1186
"dashLength": 10,
1187
"dashes": false,
1188
"datasource": {
1189
"type": "prometheus",
1190
"uid": "$datasource"
1191
},
1192
"fill": 0,
1193
"fillGradient": 0,
1194
"gridPos": {
1195
"h": 7,
1196
"w": 12,
1197
"x": 0,
1198
"y": 12
1199
},
1200
"hiddenSeries": false,
1201
"id": 52,
1202
"legend": {
1203
"avg": false,
1204
"current": false,
1205
"max": false,
1206
"min": false,
1207
"show": false,
1208
"total": false,
1209
"values": false
1210
},
1211
"lines": true,
1212
"linewidth": 1,
1213
"nullPointMode": "null",
1214
"options": {
1215
"alertThreshold": true
1216
},
1217
"percentage": false,
1218
"pluginVersion": "9.5.3",
1219
"pointradius": 2,
1220
"points": false,
1221
"renderer": "flot",
1222
"seriesOverrides": [],
1223
"spaceLength": 10,
1224
"stack": true,
1225
"steppedLine": false,
1226
"targets": [
1227
{
1228
"datasource": {
1229
"type": "prometheus",
1230
"uid": "${datasource}"
1231
},
1232
"exemplar": true,
1233
"expr": "sum(rate(gitpod_server_http_requests_total{cluster=~\"$cluster\", statusCode=~\"2..\", route=~\"$http_route\"}[5m])) by (cluster)",
1234
"interval": "",
1235
"legendFormat": "{{cluster}} - 2xx",
1236
"queryType": "randomWalk",
1237
"refId": "A"
1238
},
1239
{
1240
"datasource": {
1241
"type": "prometheus",
1242
"uid": "${datasource}"
1243
},
1244
"expr": "sum(rate(gitpod_server_http_requests_total{cluster=~\"$cluster\", statusCode=~\"3..\", route=~\"$http_route\"}[5m])) by (cluster)",
1245
"hide": false,
1246
"interval": "",
1247
"legendFormat": "{{cluster}} - 3xx",
1248
"queryType": "randomWalk",
1249
"refId": "B"
1250
},
1251
{
1252
"datasource": {
1253
"type": "prometheus",
1254
"uid": "${datasource}"
1255
},
1256
"expr": "sum(rate(gitpod_server_http_requests_total{cluster=~\"$cluster\", statusCode=~\"4..\", route=~\"$http_route\"}[5m])) by (cluster)",
1257
"hide": false,
1258
"interval": "",
1259
"legendFormat": "{{cluster}} - 4xx",
1260
"queryType": "randomWalk",
1261
"refId": "C"
1262
},
1263
{
1264
"datasource": {
1265
"type": "prometheus",
1266
"uid": "${datasource}"
1267
},
1268
"expr": "sum(rate(gitpod_server_http_requests_total{cluster=~\"$cluster\", statusCode=~\"5..\", route=~\"$http_route\"}[5m])) by (cluster)",
1269
"hide": false,
1270
"interval": "",
1271
"legendFormat": "{{cluster}} - 5xx",
1272
"queryType": "randomWalk",
1273
"refId": "D"
1274
}
1275
],
1276
"thresholds": [],
1277
"timeRegions": [],
1278
"title": "$http_route: HTTP Request rate",
1279
"tooltip": {
1280
"shared": true,
1281
"sort": 0,
1282
"value_type": "individual"
1283
},
1284
"type": "graph",
1285
"xaxis": {
1286
"mode": "time",
1287
"show": true,
1288
"values": []
1289
},
1290
"yaxes": [
1291
{
1292
"format": "reqps",
1293
"logBase": 1,
1294
"show": true
1295
},
1296
{
1297
"format": "short",
1298
"logBase": 1,
1299
"show": true
1300
}
1301
],
1302
"yaxis": {
1303
"align": false
1304
}
1305
},
1306
{
1307
"aliasColors": {},
1308
"bars": false,
1309
"dashLength": 10,
1310
"dashes": false,
1311
"datasource": {
1312
"uid": "$datasource"
1313
},
1314
"fill": 0,
1315
"fillGradient": 0,
1316
"gridPos": {
1317
"h": 7,
1318
"w": 12,
1319
"x": 12,
1320
"y": 12
1321
},
1322
"hiddenSeries": false,
1323
"id": 53,
1324
"legend": {
1325
"avg": false,
1326
"current": false,
1327
"max": false,
1328
"min": false,
1329
"show": false,
1330
"total": false,
1331
"values": false
1332
},
1333
"lines": true,
1334
"linewidth": 1,
1335
"nullPointMode": "null",
1336
"options": {
1337
"alertThreshold": true
1338
},
1339
"percentage": false,
1340
"pluginVersion": "9.5.3",
1341
"pointradius": 2,
1342
"points": false,
1343
"renderer": "flot",
1344
"seriesOverrides": [],
1345
"spaceLength": 10,
1346
"stack": true,
1347
"steppedLine": false,
1348
"targets": [
1349
{
1350
"datasource": {
1351
"uid": "$datasource"
1352
},
1353
"expr": "histogram_quantile(0.99, \n sum(rate(gitpod_server_http_request_duration_seconds_bucket{cluster=~\"$cluster\", route=~\"$http_route\"}[5m])) by (cluster, le)\n )",
1354
"interval": "",
1355
"legendFormat": "{{cluster}} - 99th percentile",
1356
"queryType": "randomWalk",
1357
"refId": "A"
1358
},
1359
{
1360
"datasource": {
1361
"uid": "$datasource"
1362
},
1363
"expr": "histogram_quantile(0.95, \n sum(rate(gitpod_server_http_request_duration_seconds_bucket{cluster=~\"$cluster\", route=~\"$http_route\"}[5m])) by (cluster, le)\n )",
1364
"hide": false,
1365
"interval": "",
1366
"legendFormat": "{{cluster}} - 95th percentile",
1367
"queryType": "randomWalk",
1368
"refId": "B"
1369
},
1370
{
1371
"datasource": {
1372
"uid": "$datasource"
1373
},
1374
"expr": "histogram_quantile(0.50, \n sum(rate(gitpod_server_http_request_duration_seconds_bucket{cluster=~\"$cluster\", route=~\"$http_route\"}[5m])) by (cluster, le)\n )",
1375
"hide": false,
1376
"interval": "",
1377
"legendFormat": "{{cluster}} - 50th percentile",
1378
"queryType": "randomWalk",
1379
"refId": "C"
1380
},
1381
{
1382
"datasource": {
1383
"uid": "$datasource"
1384
},
1385
"expr": "sum(rate(gitpod_server_http_request_duration_seconds_sum{cluster=~\"$cluster\", route=~\"$http_route\"}[5m])) by (cluster)\n/\nsum(rate(gitpod_server_http_request_duration_seconds_count{cluster=~\"$cluster\", route=~\"$http_route\"}[5m])) by (cluster)",
1386
"hide": false,
1387
"interval": "",
1388
"legendFormat": "{{cluster}} - avg",
1389
"queryType": "randomWalk",
1390
"refId": "D"
1391
}
1392
],
1393
"thresholds": [],
1394
"timeRegions": [],
1395
"title": "$http_route: HTTP Request duration",
1396
"tooltip": {
1397
"shared": true,
1398
"sort": 0,
1399
"value_type": "individual"
1400
},
1401
"type": "graph",
1402
"xaxis": {
1403
"mode": "time",
1404
"show": true,
1405
"values": []
1406
},
1407
"yaxes": [
1408
{
1409
"format": "s",
1410
"logBase": 1,
1411
"show": true
1412
},
1413
{
1414
"format": "short",
1415
"logBase": 1,
1416
"show": true
1417
}
1418
],
1419
"yaxis": {
1420
"align": false
1421
}
1422
}
1423
],
1424
"targets": [
1425
{
1426
"datasource": {
1427
"type": "datasource",
1428
"uid": "grafana"
1429
},
1430
"refId": "A"
1431
}
1432
],
1433
"title": "HTTP Metrics",
1434
"type": "row"
1435
},
1436
{
1437
"collapsed": false,
1438
"gridPos": {
1439
"h": 1,
1440
"w": 24,
1441
"x": 0,
1442
"y": 31
1443
},
1444
"id": 73,
1445
"panels": [],
1446
"title": "Messaging / Broadcasting",
1447
"type": "row"
1448
},
1449
{
1450
"datasource": {
1451
"type": "prometheus",
1452
"uid": "P4169E866C3094E38"
1453
},
1454
"description": "",
1455
"fieldConfig": {
1456
"defaults": {
1457
"color": {
1458
"mode": "palette-classic"
1459
},
1460
"custom": {
1461
"axisCenteredZero": false,
1462
"axisColorMode": "text",
1463
"axisLabel": "",
1464
"axisPlacement": "auto",
1465
"barAlignment": 0,
1466
"drawStyle": "line",
1467
"fillOpacity": 0,
1468
"gradientMode": "none",
1469
"hideFrom": {
1470
"legend": false,
1471
"tooltip": false,
1472
"viz": false
1473
},
1474
"lineInterpolation": "linear",
1475
"lineWidth": 1,
1476
"pointSize": 5,
1477
"scaleDistribution": {
1478
"type": "linear"
1479
},
1480
"showPoints": "auto",
1481
"spanNulls": false,
1482
"stacking": {
1483
"group": "A",
1484
"mode": "none"
1485
},
1486
"thresholdsStyle": {
1487
"mode": "off"
1488
}
1489
},
1490
"mappings": [],
1491
"thresholds": {
1492
"mode": "absolute",
1493
"steps": [
1494
{
1495
"color": "green",
1496
"value": null
1497
},
1498
{
1499
"color": "red",
1500
"value": 80
1501
}
1502
]
1503
}
1504
},
1505
"overrides": []
1506
},
1507
"gridPos": {
1508
"h": 8,
1509
"w": 12,
1510
"x": 0,
1511
"y": 32
1512
},
1513
"id": 74,
1514
"options": {
1515
"legend": {
1516
"calcs": [],
1517
"displayMode": "list",
1518
"placement": "bottom",
1519
"showLegend": true
1520
},
1521
"tooltip": {
1522
"mode": "single",
1523
"sort": "none"
1524
}
1525
},
1526
"targets": [
1527
{
1528
"datasource": {
1529
"type": "prometheus",
1530
"uid": "P4169E866C3094E38"
1531
},
1532
"editorMode": "code",
1533
"expr": "sum(increase(gitpod_redis_updates_received_total{cluster=~\"$cluster\", pod=~\"$pod\"}[1m])) by (channel)",
1534
"legendFormat": "__auto",
1535
"range": true,
1536
"refId": "A"
1537
}
1538
],
1539
"title": "Redis updates received [1m]",
1540
"type": "timeseries"
1541
},
1542
{
1543
"datasource": {
1544
"type": "prometheus",
1545
"uid": "P4169E866C3094E38"
1546
},
1547
"description": "",
1548
"fieldConfig": {
1549
"defaults": {
1550
"color": {
1551
"mode": "palette-classic"
1552
},
1553
"custom": {
1554
"axisCenteredZero": false,
1555
"axisColorMode": "text",
1556
"axisLabel": "",
1557
"axisPlacement": "auto",
1558
"barAlignment": 0,
1559
"drawStyle": "line",
1560
"fillOpacity": 0,
1561
"gradientMode": "none",
1562
"hideFrom": {
1563
"legend": false,
1564
"tooltip": false,
1565
"viz": false
1566
},
1567
"lineInterpolation": "linear",
1568
"lineWidth": 1,
1569
"pointSize": 5,
1570
"scaleDistribution": {
1571
"type": "linear"
1572
},
1573
"showPoints": "auto",
1574
"spanNulls": false,
1575
"stacking": {
1576
"group": "A",
1577
"mode": "none"
1578
},
1579
"thresholdsStyle": {
1580
"mode": "off"
1581
}
1582
},
1583
"mappings": [],
1584
"thresholds": {
1585
"mode": "absolute",
1586
"steps": [
1587
{
1588
"color": "green",
1589
"value": null
1590
},
1591
{
1592
"color": "red",
1593
"value": 80
1594
}
1595
]
1596
}
1597
},
1598
"overrides": []
1599
},
1600
"gridPos": {
1601
"h": 8,
1602
"w": 12,
1603
"x": 12,
1604
"y": 32
1605
},
1606
"id": 75,
1607
"options": {
1608
"legend": {
1609
"calcs": [],
1610
"displayMode": "list",
1611
"placement": "bottom",
1612
"showLegend": true
1613
},
1614
"tooltip": {
1615
"mode": "single",
1616
"sort": "none"
1617
}
1618
},
1619
"targets": [
1620
{
1621
"datasource": {
1622
"type": "prometheus",
1623
"uid": "P4169E866C3094E38"
1624
},
1625
"editorMode": "code",
1626
"expr": "sum(increase(gitpod_redis_updates_completed_total{cluster=~\"$cluster\", pod=~\"$pod\"}[1m])) by (channel, error)",
1627
"legendFormat": "__auto",
1628
"range": true,
1629
"refId": "A"
1630
}
1631
],
1632
"title": "Redis updates completed with outcome [1m]",
1633
"type": "timeseries"
1634
},
1635
{
1636
"datasource": {
1637
"type": "prometheus",
1638
"uid": "P4169E866C3094E38"
1639
},
1640
"description": "",
1641
"fieldConfig": {
1642
"defaults": {
1643
"color": {
1644
"mode": "palette-classic"
1645
},
1646
"custom": {
1647
"axisCenteredZero": false,
1648
"axisColorMode": "text",
1649
"axisLabel": "",
1650
"axisPlacement": "auto",
1651
"barAlignment": 0,
1652
"drawStyle": "line",
1653
"fillOpacity": 0,
1654
"gradientMode": "none",
1655
"hideFrom": {
1656
"legend": false,
1657
"tooltip": false,
1658
"viz": false
1659
},
1660
"lineInterpolation": "linear",
1661
"lineWidth": 1,
1662
"pointSize": 5,
1663
"scaleDistribution": {
1664
"type": "linear"
1665
},
1666
"showPoints": "auto",
1667
"spanNulls": false,
1668
"stacking": {
1669
"group": "A",
1670
"mode": "none"
1671
},
1672
"thresholdsStyle": {
1673
"mode": "off"
1674
}
1675
},
1676
"mappings": [],
1677
"thresholds": {
1678
"mode": "absolute",
1679
"steps": [
1680
{
1681
"color": "green",
1682
"value": null
1683
},
1684
{
1685
"color": "red",
1686
"value": 80
1687
}
1688
]
1689
}
1690
},
1691
"overrides": []
1692
},
1693
"gridPos": {
1694
"h": 8,
1695
"w": 12,
1696
"x": 0,
1697
"y": 40
1698
},
1699
"id": 76,
1700
"options": {
1701
"legend": {
1702
"calcs": [],
1703
"displayMode": "list",
1704
"placement": "bottom",
1705
"showLegend": true
1706
},
1707
"tooltip": {
1708
"mode": "single",
1709
"sort": "none"
1710
}
1711
},
1712
"targets": [
1713
{
1714
"datasource": {
1715
"type": "prometheus",
1716
"uid": "P4169E866C3094E38"
1717
},
1718
"editorMode": "code",
1719
"expr": "sum(gitpod_server_subscribers_registered{cluster=~\"$cluster\", pod=~\"$pod\"}) by (type)",
1720
"legendFormat": "__auto",
1721
"range": true,
1722
"refId": "A"
1723
}
1724
],
1725
"title": "Clients subscribed to updates",
1726
"type": "timeseries"
1727
},
1728
{
1729
"collapsed": true,
1730
"datasource": {
1731
"type": "datasource",
1732
"uid": "grafana"
1733
},
1734
"gridPos": {
1735
"h": 1,
1736
"w": 24,
1737
"x": 0,
1738
"y": 48
1739
},
1740
"id": 22,
1741
"panels": [
1742
{
1743
"aliasColors": {},
1744
"bars": false,
1745
"dashLength": 10,
1746
"dashes": false,
1747
"datasource": {
1748
"uid": "$datasource"
1749
},
1750
"fill": 1,
1751
"fillGradient": 0,
1752
"gridPos": {
1753
"h": 9,
1754
"w": 12,
1755
"x": 0,
1756
"y": 13
1757
},
1758
"hiddenSeries": false,
1759
"id": 28,
1760
"legend": {
1761
"alignAsTable": true,
1762
"avg": true,
1763
"current": true,
1764
"max": true,
1765
"min": false,
1766
"show": true,
1767
"total": false,
1768
"values": true
1769
},
1770
"lines": true,
1771
"linewidth": 1,
1772
"nullPointMode": "null",
1773
"options": {
1774
"alertThreshold": true
1775
},
1776
"percentage": false,
1777
"pluginVersion": "9.5.3",
1778
"pointradius": 2,
1779
"points": false,
1780
"renderer": "flot",
1781
"seriesOverrides": [],
1782
"spaceLength": 10,
1783
"stack": false,
1784
"steppedLine": false,
1785
"targets": [
1786
{
1787
"datasource": {
1788
"uid": "$datasource"
1789
},
1790
"expr": "process_resident_memory_bytes{cluster=~\"$cluster\", pod=~\"$pod\", job=\"server\"}",
1791
"interval": "",
1792
"legendFormat": "{{cluster}} - {{pod}}",
1793
"queryType": "randomWalk",
1794
"refId": "A"
1795
}
1796
],
1797
"thresholds": [],
1798
"timeRegions": [],
1799
"title": "Memory Usage (as seen by the runtime process)",
1800
"tooltip": {
1801
"shared": true,
1802
"sort": 0,
1803
"value_type": "individual"
1804
},
1805
"type": "graph",
1806
"xaxis": {
1807
"mode": "time",
1808
"show": true,
1809
"values": []
1810
},
1811
"yaxes": [
1812
{
1813
"format": "bytes",
1814
"logBase": 1,
1815
"min": "0",
1816
"show": true
1817
},
1818
{
1819
"format": "short",
1820
"logBase": 1,
1821
"show": true
1822
}
1823
],
1824
"yaxis": {
1825
"align": false
1826
}
1827
},
1828
{
1829
"aliasColors": {},
1830
"bars": false,
1831
"dashLength": 10,
1832
"dashes": false,
1833
"datasource": {
1834
"type": "prometheus",
1835
"uid": "$datasource"
1836
},
1837
"decimals": 2,
1838
"editable": true,
1839
"error": false,
1840
"fill": 1,
1841
"fillGradient": 0,
1842
"gridPos": {
1843
"h": 9,
1844
"w": 12,
1845
"x": 12,
1846
"y": 13
1847
},
1848
"hiddenSeries": false,
1849
"id": 30,
1850
"legend": {
1851
"alignAsTable": true,
1852
"avg": true,
1853
"current": true,
1854
"hideEmpty": false,
1855
"max": true,
1856
"min": false,
1857
"rightSide": false,
1858
"show": true,
1859
"total": false,
1860
"values": true
1861
},
1862
"lines": true,
1863
"linewidth": 1,
1864
"links": [],
1865
"nullPointMode": "null",
1866
"options": {
1867
"alertThreshold": true
1868
},
1869
"percentage": false,
1870
"pluginVersion": "9.5.3",
1871
"pointradius": 5,
1872
"points": false,
1873
"renderer": "flot",
1874
"seriesOverrides": [],
1875
"spaceLength": 10,
1876
"stack": false,
1877
"steppedLine": false,
1878
"targets": [
1879
{
1880
"datasource": {
1881
"uid": "$datasource"
1882
},
1883
"editorMode": "code",
1884
"expr": "rate(process_cpu_seconds_total{cluster=~\"$cluster\", job=\"server\"}[1m])",
1885
"interval": "",
1886
"intervalFactor": 2,
1887
"legendFormat": "{{cluster}} - {{kubernetes_pod_node_name}} - {{ kubernetes_pod_name }}",
1888
"metric": "prometheus_local_storage_ingested_samples_total",
1889
"range": true,
1890
"refId": "A",
1891
"step": 10
1892
}
1893
],
1894
"thresholds": [],
1895
"timeRegions": [],
1896
"title": "CPU Usage (as seen by the runtime process)",
1897
"tooltip": {
1898
"msResolution": false,
1899
"shared": true,
1900
"sort": 2,
1901
"value_type": "individual"
1902
},
1903
"type": "graph",
1904
"xaxis": {
1905
"mode": "time",
1906
"show": true,
1907
"values": [
1908
"avg"
1909
]
1910
},
1911
"yaxes": [
1912
{
1913
"decimals": 2,
1914
"format": "none",
1915
"logBase": 1,
1916
"min": "0",
1917
"show": true
1918
},
1919
{
1920
"format": "short",
1921
"logBase": 1,
1922
"show": true
1923
}
1924
],
1925
"yaxis": {
1926
"align": false
1927
}
1928
},
1929
{
1930
"aliasColors": {},
1931
"bars": false,
1932
"dashLength": 10,
1933
"dashes": false,
1934
"datasource": {
1935
"uid": "$datasource"
1936
},
1937
"fieldConfig": {
1938
"defaults": {
1939
"links": []
1940
},
1941
"overrides": []
1942
},
1943
"fill": 1,
1944
"fillGradient": 0,
1945
"gridPos": {
1946
"h": 9,
1947
"w": 12,
1948
"x": 0,
1949
"y": 22
1950
},
1951
"hiddenSeries": false,
1952
"id": 24,
1953
"legend": {
1954
"alignAsTable": true,
1955
"avg": true,
1956
"current": true,
1957
"max": true,
1958
"min": false,
1959
"show": true,
1960
"total": false,
1961
"values": true
1962
},
1963
"lines": true,
1964
"linewidth": 1,
1965
"nullPointMode": "null",
1966
"options": {
1967
"alertThreshold": true
1968
},
1969
"percentage": false,
1970
"pluginVersion": "9.5.3",
1971
"pointradius": 2,
1972
"points": false,
1973
"renderer": "flot",
1974
"seriesOverrides": [],
1975
"spaceLength": 10,
1976
"stack": false,
1977
"steppedLine": false,
1978
"targets": [
1979
{
1980
"datasource": {
1981
"uid": "$datasource"
1982
},
1983
"expr": "nodejs_eventloop_lag_seconds{cluster=~\"$cluster\", job=\"server\", pod=~\"$pod\"}",
1984
"interval": "",
1985
"legendFormat": "{{cluster}} - {{pod}}",
1986
"refId": "A"
1987
}
1988
],
1989
"thresholds": [],
1990
"timeRegions": [],
1991
"title": "Node.js: Event loop lag (s)",
1992
"tooltip": {
1993
"shared": true,
1994
"sort": 2,
1995
"value_type": "individual"
1996
},
1997
"type": "graph",
1998
"xaxis": {
1999
"mode": "time",
2000
"show": true,
2001
"values": []
2002
},
2003
"yaxes": [
2004
{
2005
"format": "s",
2006
"logBase": 1,
2007
"min": "0",
2008
"show": true
2009
},
2010
{
2011
"format": "short",
2012
"logBase": 1,
2013
"show": true
2014
}
2015
],
2016
"yaxis": {
2017
"align": false
2018
}
2019
},
2020
{
2021
"aliasColors": {},
2022
"bars": false,
2023
"dashLength": 10,
2024
"dashes": false,
2025
"datasource": {
2026
"uid": "$datasource"
2027
},
2028
"fieldConfig": {
2029
"defaults": {
2030
"links": []
2031
},
2032
"overrides": []
2033
},
2034
"fill": 0,
2035
"fillGradient": 0,
2036
"gridPos": {
2037
"h": 9,
2038
"w": 12,
2039
"x": 12,
2040
"y": 22
2041
},
2042
"hiddenSeries": false,
2043
"id": 26,
2044
"legend": {
2045
"alignAsTable": true,
2046
"avg": true,
2047
"current": true,
2048
"max": true,
2049
"min": false,
2050
"show": true,
2051
"total": false,
2052
"values": true
2053
},
2054
"lines": true,
2055
"linewidth": 1,
2056
"nullPointMode": "null",
2057
"options": {
2058
"alertThreshold": true
2059
},
2060
"percentage": false,
2061
"pluginVersion": "9.5.3",
2062
"pointradius": 2,
2063
"points": false,
2064
"renderer": "flot",
2065
"seriesOverrides": [],
2066
"spaceLength": 10,
2067
"stack": false,
2068
"steppedLine": false,
2069
"targets": [
2070
{
2071
"datasource": {
2072
"uid": "$datasource"
2073
},
2074
"expr": "nodejs_active_handles_total{cluster=~\"$cluster\", job=\"server\", pod=~\"$pod\"}",
2075
"interval": "",
2076
"legendFormat": "{{cluster}} - {{pod}}",
2077
"refId": "A"
2078
}
2079
],
2080
"thresholds": [],
2081
"timeRegions": [],
2082
"title": "Node.js: File Handles",
2083
"tooltip": {
2084
"shared": true,
2085
"sort": 2,
2086
"value_type": "individual"
2087
},
2088
"type": "graph",
2089
"xaxis": {
2090
"mode": "time",
2091
"show": true,
2092
"values": []
2093
},
2094
"yaxes": [
2095
{
2096
"format": "none",
2097
"logBase": 1,
2098
"min": "0",
2099
"show": true
2100
},
2101
{
2102
"format": "short",
2103
"logBase": 1,
2104
"show": true
2105
}
2106
],
2107
"yaxis": {
2108
"align": false
2109
}
2110
}
2111
],
2112
"targets": [
2113
{
2114
"datasource": {
2115
"type": "datasource",
2116
"uid": "grafana"
2117
},
2118
"refId": "A"
2119
}
2120
],
2121
"title": "Node.js Runtime Metrics",
2122
"type": "row"
2123
}
2124
],
2125
"refresh": "",
2126
"schemaVersion": 38,
2127
"style": "dark",
2128
"tags": [
2129
"gitpod-mixin"
2130
],
2131
"templating": {
2132
"list": [
2133
{
2134
"allValue": ".*",
2135
"current": {
2136
"selected": true,
2137
"text": [
2138
"All"
2139
],
2140
"value": [
2141
"$__all"
2142
]
2143
},
2144
"datasource": {
2145
"uid": "$datasource"
2146
},
2147
"definition": "label_values(up{job=\"server\"}, cluster)",
2148
"hide": 0,
2149
"includeAll": true,
2150
"label": "Cluster",
2151
"multi": true,
2152
"name": "cluster",
2153
"options": [],
2154
"query": {
2155
"query": "label_values(up{job=\"server\"}, cluster)",
2156
"refId": "StandardVariableQuery"
2157
},
2158
"refresh": 2,
2159
"regex": "",
2160
"skipUrlSync": false,
2161
"sort": 0,
2162
"tagValuesQuery": "",
2163
"tagsQuery": "",
2164
"type": "query",
2165
"useTags": false
2166
},
2167
{
2168
"allValue": ".*",
2169
"current": {
2170
"selected": true,
2171
"text": [
2172
"All"
2173
],
2174
"value": [
2175
"$__all"
2176
]
2177
},
2178
"datasource": {
2179
"uid": "$datasource"
2180
},
2181
"definition": "label_values(container_cpu_usage_seconds_total{cluster=~\"$cluster\", pod=~\"server.*\"}, node)",
2182
"hide": 0,
2183
"includeAll": true,
2184
"label": "Node",
2185
"multi": true,
2186
"name": "node",
2187
"options": [],
2188
"query": {
2189
"query": "label_values(container_cpu_usage_seconds_total{cluster=~\"$cluster\", pod=~\"server.*\"}, node)",
2190
"refId": "StandardVariableQuery"
2191
},
2192
"refresh": 2,
2193
"regex": "",
2194
"skipUrlSync": false,
2195
"sort": 0,
2196
"tagValuesQuery": "",
2197
"tagsQuery": "",
2198
"type": "query",
2199
"useTags": false
2200
},
2201
{
2202
"allValue": ".*",
2203
"current": {
2204
"selected": false,
2205
"text": "All",
2206
"value": "$__all"
2207
},
2208
"datasource": {
2209
"uid": "$datasource"
2210
},
2211
"definition": "label_values(container_cpu_usage_seconds_total{cluster=~\"$cluster\", node=~\"$node\", pod=~\"server.*\"}, pod)",
2212
"hide": 0,
2213
"includeAll": true,
2214
"label": "Pod",
2215
"multi": true,
2216
"name": "pod",
2217
"options": [],
2218
"query": {
2219
"query": "label_values(container_cpu_usage_seconds_total{cluster=~\"$cluster\", node=~\"$node\", pod=~\"server.*\"}, pod)",
2220
"refId": "StandardVariableQuery"
2221
},
2222
"refresh": 2,
2223
"regex": "",
2224
"skipUrlSync": false,
2225
"sort": 0,
2226
"tagValuesQuery": "",
2227
"tagsQuery": "",
2228
"type": "query",
2229
"useTags": false
2230
},
2231
{
2232
"allValue": ".*",
2233
"current": {
2234
"selected": true,
2235
"text": [
2236
"All"
2237
],
2238
"value": [
2239
"$__all"
2240
]
2241
},
2242
"datasource": {
2243
"uid": "$datasource"
2244
},
2245
"definition": "label_values(gitpod_server_api_calls_total{cluster=~\"$cluster\"}, method)",
2246
"hide": 0,
2247
"includeAll": true,
2248
"label": "API Method",
2249
"multi": true,
2250
"name": "method",
2251
"options": [],
2252
"query": {
2253
"query": "label_values(gitpod_server_api_calls_total{cluster=~\"$cluster\"}, method)",
2254
"refId": "StandardVariableQuery"
2255
},
2256
"refresh": 2,
2257
"regex": "",
2258
"skipUrlSync": false,
2259
"sort": 1,
2260
"tagValuesQuery": "",
2261
"tagsQuery": "",
2262
"type": "query",
2263
"useTags": false
2264
},
2265
{
2266
"current": {
2267
"selected": false,
2268
"text": "VictoriaMetrics",
2269
"value": "VictoriaMetrics"
2270
},
2271
"hide": 0,
2272
"includeAll": false,
2273
"multi": false,
2274
"name": "datasource",
2275
"options": [],
2276
"query": "prometheus",
2277
"refresh": 1,
2278
"regex": "",
2279
"skipUrlSync": false,
2280
"type": "datasource"
2281
},
2282
{
2283
"allValue": ".*",
2284
"current": {
2285
"selected": true,
2286
"text": [
2287
"All"
2288
],
2289
"value": [
2290
"$__all"
2291
]
2292
},
2293
"datasource": {
2294
"uid": "$datasource"
2295
},
2296
"definition": "label_values(gitpod_server_http_requests_total, route)",
2297
"hide": 0,
2298
"includeAll": true,
2299
"label": "HTTP Route",
2300
"multi": true,
2301
"name": "http_route",
2302
"options": [],
2303
"query": {
2304
"query": "label_values(gitpod_server_http_requests_total, route)",
2305
"refId": "StandardVariableQuery"
2306
},
2307
"refresh": 2,
2308
"regex": "",
2309
"skipUrlSync": false,
2310
"sort": 1,
2311
"tagValuesQuery": "",
2312
"tagsQuery": "",
2313
"type": "query",
2314
"useTags": false
2315
}
2316
]
2317
},
2318
"time": {
2319
"from": "now-3h",
2320
"to": "now"
2321
},
2322
"timepicker": {
2323
"refresh_intervals": [
2324
"30s",
2325
"1m",
2326
"5m",
2327
"15m",
2328
"30m",
2329
"1h",
2330
"2h",
2331
"1d"
2332
]
2333
},
2334
"timezone": "utc",
2335
"title": "Gitpod / Component / server",
2336
"uid": "server",
2337
"version": 1,
2338
"weekStart": "monday"
2339
}
2340
2341