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