Path: blob/main/operations/observability/mixins/platform/dashboards/preview-environments/overview.json
2501 views
{1"__inputs": [],2"__elements": [],3"__requires": [4{5"type": "panel",6"id": "gauge",7"name": "Gauge",8"version": ""9},10{11"type": "grafana",12"id": "grafana",13"name": "Grafana",14"version": "9.0.2"15},16{17"type": "datasource",18"id": "prometheus",19"name": "Prometheus",20"version": "1.0.0"21},22{23"type": "panel",24"id": "text",25"name": "Text",26"version": ""27},28{29"type": "panel",30"id": "timeseries",31"name": "Time series",32"version": ""33}34],35"annotations": {36"list": [37{38"builtIn": 1,39"datasource": {40"type": "datasource",41"uid": "grafana"42},43"enable": true,44"hide": true,45"iconColor": "rgba(0, 211, 255, 1)",46"name": "Annotations & Alerts",47"target": {48"limit": 100,49"matchAny": false,50"tags": [],51"type": "dashboard"52},53"type": "dashboard"54}55]56},57"description": "",58"editable": true,59"fiscalYearStartMonth": 0,60"graphTooltip": 0,61"id": null,62"iteration": 1658152238378,63"links": [],64"liveNow": false,65"panels": [66{67"datasource": {68"type": "prometheus",69"uid": "$datasource"70},71"fieldConfig": {72"defaults": {73"color": {74"mode": "thresholds"75},76"mappings": [],77"max": 80,78"min": 0,79"noValue": "None",80"thresholds": {81"mode": "absolute",82"steps": [83{84"color": "green",85"value": null86},87{88"color": "yellow",89"value": 5690},91{92"color": "red",93"value": 6494}95]96}97},98"overrides": []99},100"gridPos": {101"h": 7,102"w": 5,103"x": 9,104"y": 0105},106"id": 67,107"options": {108"orientation": "auto",109"reduceOptions": {110"calcs": [111"lastNotNull"112],113"fields": "",114"values": false115},116"showThresholdLabels": true,117"showThresholdMarkers": true,118"text": {}119},120"pluginVersion": "9.0.2",121"targets": [122{123"datasource": {124"type": "prometheus",125"uid": "$datasource"126},127"editorMode": "code",128"exemplar": false,129"expr": "count(kubevirt_vmi_memory_used_total_bytes{cluster=~\"$cluster\"})",130"instant": true,131"range": false,132"refId": "A"133}134],135"title": "Running Previews",136"transparent": true,137"type": "gauge"138},139{140"collapsed": false,141"gridPos": {142"h": 1,143"w": 24,144"x": 0,145"y": 7146},147"id": 70,148"panels": [],149"title": "Previews per node",150"type": "row"151},152{153"datasource": {154"type": "prometheus",155"uid": "$datasource"156},157"fieldConfig": {158"defaults": {159"color": {160"mode": "thresholds"161},162"mappings": [],163"max": 10,164"min": 0,165"noValue": "None",166"thresholds": {167"mode": "absolute",168"steps": [169{170"color": "light-green",171"value": null172},173{174"color": "yellow",175"value": 7176},177{178"color": "red",179"value": 8180}181]182}183},184"overrides": []185},186"gridPos": {187"h": 4,188"w": 6,189"x": 0,190"y": 8191},192"id": 68,193"options": {194"orientation": "auto",195"reduceOptions": {196"calcs": [197"lastNotNull"198],199"fields": "",200"values": false201},202"showThresholdLabels": true,203"showThresholdMarkers": true204},205"pluginVersion": "9.0.2",206"repeat": "node",207"repeatDirection": "h",208"targets": [209{210"datasource": {211"type": "prometheus",212"uid": "$datasource"213},214"expr": "count(kubevirt_vmi_memory_used_total_bytes{cluster=~\"$cluster\", kubernetes_vmi_label_kubevirt_io_nodeName=\"$node\"})",215"refId": "A"216}217],218"title": "$node: Running Previews",219"transparent": true,220"type": "gauge"221},222{223"collapsed": false,224"gridPos": {225"h": 1,226"w": 24,227"x": 0,228"y": 16229},230"id": 95,231"panels": [],232"title": "Service Level Indicators",233"type": "row"234},235{236"datasource": {237"type": "datasource",238"uid": "grafana"239},240"description": "",241"gridPos": {242"h": 9,243"w": 2,244"x": 0,245"y": 17246},247"id": 86,248"options": {249"content": "We have an SLO for preview starts in Honeycomb. You can see the SLO [here](https://ui.honeycomb.io/gitpod/datasets/werft/slo/zRm48xoKMXf/Preview-Start). Alternatively you can use [this query](https://ui.honeycomb.io/gitpod/datasets/werft/result/a64cNk4sArf) to dig into succesful and failed SLI events. The definition of the SLO can be found [here](https://www.notion.so/gitpod/Preview-Environment-Service-Level-Indicators-SLIs-55b649ad17774f279c142af55ad2fec7#f483f73aa4974ad3b8b6825fa2f251fa).",250"mode": "markdown"251},252"pluginVersion": "9.0.2",253"title": "Preview Start SLO",254"type": "text"255},256{257"datasource": {258"type": "prometheus",259"uid": "$datasource"260},261"fieldConfig": {262"defaults": {263"color": {264"mode": "palette-classic"265},266"custom": {267"axisLabel": "",268"axisPlacement": "auto",269"barAlignment": 0,270"drawStyle": "line",271"fillOpacity": 0,272"gradientMode": "none",273"hideFrom": {274"legend": false,275"tooltip": false,276"viz": false277},278"lineInterpolation": "linear",279"lineWidth": 1,280"pointSize": 5,281"scaleDistribution": {282"type": "linear"283},284"showPoints": "auto",285"spanNulls": false,286"stacking": {287"group": "A",288"mode": "none"289},290"thresholdsStyle": {291"mode": "off"292}293},294"mappings": [],295"max": 1,296"min": 0,297"thresholds": {298"mode": "absolute",299"steps": [300{301"color": "green",302"value": null303},304{305"color": "red",306"value": 80307}308]309},310"unit": "percentunit"311},312"overrides": []313},314"gridPos": {315"h": 9,316"w": 11,317"x": 2,318"y": 17319},320"id": 104,321"options": {322"legend": {323"calcs": [],324"displayMode": "list",325"placement": "bottom"326},327"tooltip": {328"mode": "multi",329"sort": "none"330}331},332"targets": [333{334"datasource": {335"type": "prometheus",336"uid": "$datasource"337},338"editorMode": "code",339"expr": "1 - (\r\n sum(rate(http_prober_probes_failed_total{environment=\"preview-environments\"}[5m]))\r\n /\r\n sum(rate(http_prober_probe_duration_seconds_count{environment=\"preview-environments\"}[5m]))\r\n)",340"hide": false,341"legendFormat": "Probe success ratio",342"range": true,343"refId": "B"344}345],346"title": "Preview environments should be able to communicate to the internet",347"type": "timeseries"348},349{350"datasource": {351"type": "prometheus",352"uid": "$datasource"353},354"fieldConfig": {355"defaults": {356"color": {357"mode": "palette-classic"358},359"custom": {360"axisLabel": "",361"axisPlacement": "auto",362"barAlignment": 0,363"drawStyle": "line",364"fillOpacity": 0,365"gradientMode": "none",366"hideFrom": {367"legend": false,368"tooltip": false,369"viz": false370},371"lineInterpolation": "linear",372"lineWidth": 1,373"pointSize": 5,374"scaleDistribution": {375"type": "linear"376},377"showPoints": "auto",378"spanNulls": false,379"stacking": {380"group": "A",381"mode": "none"382},383"thresholdsStyle": {384"mode": "off"385}386},387"mappings": [],388"max": 1,389"min": 0,390"thresholds": {391"mode": "absolute",392"steps": [393{394"color": "green",395"value": null396},397{398"color": "red",399"value": 80400}401]402},403"unit": "percentunit"404},405"overrides": []406},407"gridPos": {408"h": 9,409"w": 11,410"x": 13,411"y": 17412},413"id": 112,414"options": {415"legend": {416"calcs": [],417"displayMode": "list",418"placement": "bottom"419},420"tooltip": {421"mode": "multi",422"sort": "none"423}424},425"targets": [426{427"datasource": {428"type": "prometheus",429"uid": "$datasource"430},431"editorMode": "code",432"expr": "sum(rate(rest_client_requests_total{code=~\"2..|4..\", host=~\"127.0.0.1.*\", environment=\"preview-environments\"}[5m]))\r\n/ \r\nsum(rate(rest_client_requests_total{host=~\"127.0.0.1.*\", environment=\"preview-environments\"}[5m]))",433"legendFormat": "K3s requests success rate",434"range": true,435"refId": "A"436}437],438"title": "K3s running in preview environments should respond successfully to Read/Write requests",439"type": "timeseries"440}441],442"refresh": "30s",443"schemaVersion": 36,444"style": "dark",445"tags": [],446"templating": {447"list": [448{449"current": {450"selected": false,451"text": "VictoriaMetrics",452"value": "VictoriaMetrics"453},454"hide": 0,455"includeAll": false,456"multi": false,457"name": "datasource",458"options": [],459"query": "prometheus",460"queryValue": "",461"refresh": 1,462"regex": "",463"skipUrlSync": false,464"type": "datasource"465},466{467"current": {},468"datasource": {469"uid": "$datasource"470},471"definition": "label_values(kubevirt_info, cluster)",472"hide": 0,473"includeAll": true,474"label": "cluster",475"multi": true,476"name": "cluster",477"options": [],478"query": {479"query": "label_values(kubevirt_info, cluster)",480"refId": "StandardVariableQuery"481},482"refresh": 2,483"regex": "",484"skipUrlSync": false,485"sort": 0,486"tagValuesQuery": "",487"tagsQuery": "",488"type": "query",489"useTags": false490},491{492"current": {},493"datasource": {494"uid": "$datasource"495},496"definition": "label_values(kubevirt_vmi_memory_used_total_bytes{cluster=~\"$cluster\"}, kubernetes_vmi_label_kubevirt_io_nodeName)",497"hide": 0,498"includeAll": true,499"label": "node",500"multi": false,501"name": "node",502"options": [],503"query": {504"query": "label_values(kubevirt_vmi_memory_used_total_bytes{cluster=~\"$cluster\"}, kubernetes_vmi_label_kubevirt_io_nodeName)",505"refId": "StandardVariableQuery"506},507"refresh": 2,508"regex": "",509"skipUrlSync": false,510"sort": 1,511"tagValuesQuery": "",512"tagsQuery": "",513"type": "query",514"useTags": false515}516]517},518"time": {519"from": "now-1h",520"to": "now"521},522"timepicker": {523"refresh_intervals": [524"5s",525"10s",526"30s",527"1m",528"5m",529"15m",530"30m",531"1h",532"2h",533"1d"534],535"time_options": [536"5m",537"15m",538"1h",539"6h",540"12h",541"24h",542"2d",543"7d",544"30d"545]546},547"timezone": "UTC",548"title": "Preview Environments",549"uid": "preview-environments",550"version": 1,551"weekStart": ""552}553554555