Path: blob/main/operations/observability/mixins/workspace/dashboards/success-criteria.json
2501 views
{1"annotations": {2"list": [3{4"builtIn": 1,5"datasource": {6"type": "datasource",7"uid": "grafana"8},9"enable": true,10"hide": true,11"iconColor": "rgba(0, 211, 255, 1)",12"name": "Annotations & Alerts",13"target": {14"limit": 100,15"matchAny": false,16"tags": [],17"type": "dashboard"18},19"type": "dashboard"20}21]22},23"editable": true,24"fiscalYearStartMonth": 0,25"graphTooltip": 0,26"links": [],27"liveNow": false,28"panels": [29{30"datasource": {31"type": "prometheus",32"uid": "${datasource}"33},34"fieldConfig": {35"defaults": {36"color": {37"fixedColor": "blue",38"mode": "fixed"39},40"decimals": 4,41"mappings": [],42"max": 1,43"min": 0.9,44"thresholds": {45"mode": "absolute",46"steps": [47{48"color": "red",49"value": null50},51{52"color": "green",53"value": 0.9954}55]56}57},58"overrides": []59},60"gridPos": {61"h": 9,62"w": 12,63"x": 0,64"y": 065},66"id": 13,67"options": {68"colorMode": "value",69"graphMode": "area",70"justifyMode": "auto",71"orientation": "auto",72"reduceOptions": {73"calcs": [74"lastNotNull"75],76"fields": "",77"values": false78},79"textMode": "auto"80},81"pluginVersion": "9.5.1",82"targets": [83{84"datasource": {85"type": "prometheus",86"uid": "${datasource}"87},88"editorMode": "code",89"exemplar": false,90"expr": "1-((\n (\n (sum(rate(gitpod_ws_manager_mk2_workspace_stops_total{reason=\"failed\",cluster!~\"prod-meta-.*|ephemeral.*\"}[1d])) OR on() vector(0))\n /\n sum(rate(gitpod_ws_manager_mk2_workspace_stops_total{cluster!~\"prod-meta-.*|ephemeral.*\"}[1d]))\n )\n) OR on() vector(0) + (\n (\n (sum(rate(grpc_server_handled_total{service=\"gitpod-ws-manager-mk2\",grpc_method=\"StartWorkspace\",grpc_code!~\"OK|ResourceExhausted\",cluster!~\"prod-meta-.*|ephemeral.*\"}[1d])) OR on() vector(0))\n /\n sum(rate(grpc_server_handled_total{service=\"gitpod-ws-manager-mk2\",grpc_method=\"StartWorkspace\",cluster!~\"prod-meta-.*|ephemeral.*\"}[1d]))\n )\n))",91"instant": false,92"interval": "",93"legendFormat": "Success Rate",94"refId": "A"95}96],97"title": "Workspace Success Rate",98"type": "stat"99},100{101"datasource": {102"type": "prometheus",103"uid": "${datasource}"104},105"fieldConfig": {106"defaults": {107"color": {108"mode": "thresholds"109},110"mappings": [],111"thresholds": {112"mode": "absolute",113"steps": [114{115"color": "green",116"value": null117},118{119"color": "red",120"value": 40121}122]123},124"unit": "s"125},126"overrides": []127},128"gridPos": {129"h": 9,130"w": 12,131"x": 12,132"y": 0133},134"id": 14,135"options": {136"colorMode": "value",137"graphMode": "area",138"justifyMode": "auto",139"orientation": "auto",140"reduceOptions": {141"calcs": [142"lastNotNull"143],144"fields": "",145"values": false146},147"textMode": "auto"148},149"pluginVersion": "9.5.1",150"targets": [151{152"datasource": {153"type": "prometheus",154"uid": "${datasource}"155},156"editorMode": "code",157"exemplar": true,158"expr": "histogram_quantile(\n 0.95, \n sum(\n rate(gitpod_ws_manager_mk2_workspace_startup_seconds_bucket{type!=\"Prebuild\",cluster!~\"prod-meta.*|ephemeral.*\"}[1d])\n ) by (le)\n )",159"interval": "",160"legendFormat": "P95",161"range": true,162"refId": "A"163},164{165"datasource": {166"type": "prometheus",167"uid": "${datasource}"168},169"editorMode": "code",170"expr": "histogram_quantile(\n 0.75, \n sum(\n rate(gitpod_ws_manager_mk2_workspace_startup_seconds_bucket{type!=\"Prebuild\",cluster!~\"prod-meta.*|ephemeral.*\"}[1d])\n ) by (le)\n )",171"hide": false,172"legendFormat": "P75",173"range": true,174"refId": "B"175},176{177"datasource": {178"type": "prometheus",179"uid": "${datasource}"180},181"editorMode": "code",182"exemplar": true,183"expr": "histogram_quantile(\n 0.50, \n sum(\n rate(gitpod_ws_manager_mk2_workspace_startup_seconds_bucket{type!=\"Prebuild\",cluster!~\"prod-meta.*|ephemeral.*\"}[1d])\n ) by (le)\n )",184"hide": false,185"interval": "",186"legendFormat": "P50",187"range": true,188"refId": "C"189},190{191"datasource": {192"type": "prometheus",193"uid": "${datasource}"194},195"editorMode": "code",196"exemplar": true,197"expr": "histogram_quantile(\n 0.25, \n sum(\n rate(gitpod_ws_manager_mk2_workspace_startup_seconds_bucket{type!=\"Prebuild\",cluster!~\"prod-meta.*|ephemeral.*\"}[1d])\n ) by (le)\n )",198"hide": false,199"interval": "",200"legendFormat": "P25",201"range": true,202"refId": "D"203},204{205"datasource": {206"type": "prometheus",207"uid": "${datasource}"208},209"editorMode": "code",210"exemplar": true,211"expr": "histogram_quantile(\n 0.01, \n sum(\n rate(gitpod_ws_manager_mk2_workspace_startup_seconds_bucket{type!=\"Prebuild\",cluster!~\"prod-meta.*|ephemeral.*\"}[1d])\n ) by (le)\n )",212"hide": false,213"interval": "",214"legendFormat": "P1",215"range": true,216"refId": "E"217}218],219"title": "Workspace Startup Time",220"type": "stat"221},222{223"datasource": {224"type": "prometheus",225"uid": "${datasource}"226},227"fieldConfig": {228"defaults": {229"color": {230"fixedColor": "blue",231"mode": "fixed"232},233"custom": {234"axisCenteredZero": false,235"axisColorMode": "text",236"axisLabel": "",237"axisPlacement": "auto",238"barAlignment": 0,239"drawStyle": "line",240"fillOpacity": 22,241"gradientMode": "opacity",242"hideFrom": {243"legend": false,244"tooltip": false,245"viz": false246},247"lineInterpolation": "linear",248"lineWidth": 1,249"pointSize": 5,250"scaleDistribution": {251"type": "linear"252},253"showPoints": "auto",254"spanNulls": false,255"stacking": {256"group": "A",257"mode": "none"258},259"thresholdsStyle": {260"mode": "line+area"261}262},263"mappings": [],264"max": 1,265"min": 0.9,266"thresholds": {267"mode": "absolute",268"steps": [269{270"color": "red",271"value": null272},273{274"color": "green",275"value": 0.99276}277]278}279},280"overrides": []281},282"gridPos": {283"h": 9,284"w": 12,285"x": 0,286"y": 9287},288"id": 9,289"options": {290"legend": {291"calcs": [],292"displayMode": "list",293"placement": "bottom",294"showLegend": true295},296"tooltip": {297"mode": "single",298"sort": "none"299}300},301"targets": [302{303"datasource": {304"type": "prometheus",305"uid": "${datasource}"306},307"editorMode": "code",308"exemplar": false,309"expr": "1-((\n (\n (sum(rate(gitpod_ws_manager_mk2_workspace_stops_total{reason=\"failed\",cluster!~\"prod-meta-.*|ephemeral.*\"}[1d])) OR on() vector(0))\n /\n sum(rate(gitpod_ws_manager_mk2_workspace_stops_total{cluster!~\"prod-meta-.*|ephemeral.*\"}[1d]))\n )\n) + (\n (\n (sum(rate(grpc_server_handled_total{service=\"gitpod-ws-manager-mk2\",grpc_method=\"StartWorkspace\",grpc_code!~\"OK|ResourceExhausted\",cluster!~\"prod-meta-.*|ephemeral.*\"}[1d])) OR on() vector(0))\n /\n sum(rate(grpc_server_handled_total{service=\"gitpod-ws-manager-mk2\",grpc_method=\"StartWorkspace\",cluster!~\"prod-meta-.*|ephemeral.*\"}[1d]))\n )\n))",310"hide": false,311"instant": false,312"interval": "",313"legendFormat": "Success rate",314"refId": "B"315}316],317"title": "Workspace Success Rate",318"type": "timeseries"319},320{321"datasource": {322"type": "prometheus",323"uid": "${datasource}"324},325"fieldConfig": {326"defaults": {327"color": {328"mode": "palette-classic"329},330"custom": {331"axisCenteredZero": false,332"axisColorMode": "text",333"axisLabel": "",334"axisPlacement": "auto",335"barAlignment": 0,336"drawStyle": "line",337"fillOpacity": 11,338"gradientMode": "opacity",339"hideFrom": {340"legend": false,341"tooltip": false,342"viz": false343},344"lineInterpolation": "linear",345"lineWidth": 1,346"pointSize": 5,347"scaleDistribution": {348"type": "linear"349},350"showPoints": "auto",351"spanNulls": false,352"stacking": {353"group": "A",354"mode": "none"355},356"thresholdsStyle": {357"mode": "line+area"358}359},360"mappings": [],361"thresholds": {362"mode": "absolute",363"steps": [364{365"color": "green",366"value": null367},368{369"color": "red",370"value": 40371}372]373},374"unit": "s"375},376"overrides": []377},378"gridPos": {379"h": 9,380"w": 12,381"x": 12,382"y": 9383},384"id": 12,385"options": {386"legend": {387"calcs": [],388"displayMode": "list",389"placement": "bottom",390"showLegend": true391},392"tooltip": {393"mode": "single",394"sort": "none"395}396},397"targets": [398{399"datasource": {400"type": "prometheus",401"uid": "${datasource}"402},403"editorMode": "code",404"exemplar": true,405"expr": "histogram_quantile(\n 0.95, \n sum(\n rate(gitpod_ws_manager_mk2_workspace_startup_seconds_bucket{type!=\"Prebuild\",cluster!~\"prod-meta.*|ephemeral.*\"}[1d])\n ) by (le)\n )",406"hide": false,407"interval": "",408"legendFormat": "P95",409"range": true,410"refId": "C"411},412{413"datasource": {414"type": "prometheus",415"uid": "${datasource}"416},417"editorMode": "code",418"expr": "histogram_quantile(\n 0.75, \n sum(\n rate(gitpod_ws_manager_mk2_workspace_startup_seconds_bucket{type!=\"Prebuild\",cluster!~\"prod-meta.*|ephemeral.*\"}[1d])\n ) by (le)\n )",419"hide": false,420"legendFormat": "P75",421"range": true,422"refId": "D"423},424{425"datasource": {426"type": "prometheus",427"uid": "${datasource}"428},429"editorMode": "code",430"exemplar": true,431"expr": "histogram_quantile(\n 0.50, \n sum(\n rate(gitpod_ws_manager_mk2_workspace_startup_seconds_bucket{type!=\"Prebuild\",cluster!~\"prod-meta.*|ephemeral.*\"}[1d])\n ) by (le)\n )",432"hide": false,433"interval": "",434"legendFormat": "P50",435"range": true,436"refId": "A"437},438{439"datasource": {440"type": "prometheus",441"uid": "${datasource}"442},443"editorMode": "code",444"exemplar": true,445"expr": "histogram_quantile(\n 0.25, \n sum(\n rate(gitpod_ws_manager_mk2_workspace_startup_seconds_bucket{type!=\"Prebuild\",cluster!~\"prod-meta.*|ephemeral.*\"}[1d])\n ) by (le)\n )",446"hide": false,447"interval": "",448"legendFormat": "P25",449"range": true,450"refId": "B"451},452{453"datasource": {454"type": "prometheus",455"uid": "${datasource}"456},457"editorMode": "code",458"exemplar": true,459"expr": "histogram_quantile(\n 0.01, \n sum(\n rate(gitpod_ws_manager_mk2_workspace_startup_seconds_bucket{type!=\"Prebuild\",cluster!~\"prod-meta.*|ephemeral.*\"}[1d])\n ) by (le)\n )",460"hide": false,461"interval": "",462"legendFormat": "P01",463"range": true,464"refId": "E"465}466],467"title": "Workspace Startup Time",468"type": "timeseries"469},470{471"collapsed": false,472"gridPos": {473"h": 1,474"w": 24,475"x": 0,476"y": 18477},478"id": 8,479"panels": [],480"title": "By Cluster",481"type": "row"482},483{484"datasource": {485"type": "prometheus",486"uid": "${datasource}"487},488"fieldConfig": {489"defaults": {490"color": {491"fixedColor": "blue",492"mode": "palette-classic"493},494"custom": {495"axisCenteredZero": false,496"axisColorMode": "text",497"axisLabel": "",498"axisPlacement": "auto",499"barAlignment": 0,500"drawStyle": "line",501"fillOpacity": 0,502"gradientMode": "opacity",503"hideFrom": {504"legend": false,505"tooltip": false,506"viz": false507},508"lineInterpolation": "linear",509"lineWidth": 1,510"pointSize": 5,511"scaleDistribution": {512"type": "linear"513},514"showPoints": "auto",515"spanNulls": false,516"stacking": {517"group": "A",518"mode": "none"519},520"thresholdsStyle": {521"mode": "line+area"522}523},524"mappings": [],525"max": 1,526"min": 0.9,527"thresholds": {528"mode": "absolute",529"steps": [530{531"color": "red",532"value": null533},534{535"color": "green",536"value": 0.99537}538]539}540},541"overrides": []542},543"gridPos": {544"h": 14,545"w": 24,546"x": 0,547"y": 19548},549"id": 5,550"options": {551"legend": {552"calcs": [],553"displayMode": "list",554"placement": "bottom",555"showLegend": true556},557"tooltip": {558"mode": "single",559"sort": "none"560}561},562"targets": [563{564"datasource": {565"type": "prometheus",566"uid": "${datasource}"567},568"editorMode": "code",569"exemplar": false,570"expr": "1-((\n (\n (sum by (cluster)(rate(gitpod_ws_manager_mk2_workspace_stops_total{reason=\"failed\",cluster!~\"prod-meta-.*|ephemeral.*\"}[1d])) OR on() vector(0))\n /\n sum by (cluster)(rate(gitpod_ws_manager_mk2_workspace_stops_total{cluster!~\"prod-meta-.*|ephemeral.*\"}[1d]))\n )\n) OR on() vector(0) + (\n (\n (sum by (cluster)(rate(grpc_server_handled_total{service=\"gitpod-ws-manager-mk2\",grpc_method=\"StartWorkspace\",grpc_code!~\"OK|ResourceExhausted\",cluster!~\"prod-meta-.*|ephemeral.*\"}[1d])) OR on() vector(0))\n /\n sum by (cluster)(rate(grpc_server_handled_total{service=\"gitpod-ws-manager-mk2\",grpc_method=\"StartWorkspace\",cluster!~\"prod-meta-.*|ephemeral.*\"}[1d]))\n )\n))",571"hide": false,572"instant": false,573"interval": "",574"legendFormat": "{{ cluster }}",575"refId": "B"576}577],578"title": "Workspace Success Rate (By Cluster)",579"type": "timeseries"580},581{582"datasource": {583"type": "prometheus",584"uid": "${datasource}"585},586"fieldConfig": {587"defaults": {588"color": {589"mode": "palette-classic"590},591"custom": {592"axisCenteredZero": false,593"axisColorMode": "text",594"axisLabel": "",595"axisPlacement": "auto",596"barAlignment": 0,597"drawStyle": "line",598"fillOpacity": 11,599"gradientMode": "opacity",600"hideFrom": {601"legend": false,602"tooltip": false,603"viz": false604},605"lineInterpolation": "linear",606"lineWidth": 1,607"pointSize": 5,608"scaleDistribution": {609"type": "linear"610},611"showPoints": "auto",612"spanNulls": false,613"stacking": {614"group": "A",615"mode": "none"616},617"thresholdsStyle": {618"mode": "line+area"619}620},621"mappings": [],622"max": 200,623"thresholds": {624"mode": "absolute",625"steps": [626{627"color": "green",628"value": null629},630{631"color": "red",632"value": 40633}634]635},636"unit": "s"637},638"overrides": []639},640"gridPos": {641"h": 15,642"w": 24,643"x": 0,644"y": 33645},646"id": 6,647"options": {648"legend": {649"calcs": [],650"displayMode": "list",651"placement": "bottom",652"showLegend": true653},654"tooltip": {655"mode": "single",656"sort": "none"657}658},659"targets": [660{661"datasource": {662"type": "prometheus",663"uid": "${datasource}"664},665"editorMode": "code",666"exemplar": true,667"expr": "histogram_quantile(\n 0.95, \n sum(\n rate(gitpod_ws_manager_mk2_workspace_startup_seconds_bucket{type!=\"Prebuild\",cluster!~\"prod-meta.*|ephemeral.*\"}[1d])\n ) by (le, cluster)\n )",668"hide": false,669"interval": "",670"legendFormat": "{{cluster}}",671"range": true,672"refId": "B"673}674],675"title": "Workspace P95 Startup Time (By Cluster)",676"type": "timeseries"677}678],679"refresh": "1m",680"revision": 1,681"schemaVersion": 38,682"style": "dark",683"tags": [684"workspace",685"success criteria"686],687"templating": {688"list": [689{690"current": {691"selected": false,692"text": "VictoriaMetrics",693"value": "VictoriaMetrics"694},695"hide": 0,696"includeAll": false,697"multi": false,698"name": "datasource",699"options": [],700"query": "prometheus",701"queryValue": "",702"refresh": 2,703"regex": "",704"skipUrlSync": false,705"type": "datasource"706},707{708"current": {709"selected": false,710"text": "All",711"value": "$__all"712},713"datasource": {714"type": "prometheus",715"uid": "${datasource}"716},717"definition": "label_values(container_cpu_usage_seconds_total, cluster)",718"hide": 0,719"includeAll": true,720"multi": true,721"name": "cluster",722"options": [],723"query": {724"query": "label_values(container_cpu_usage_seconds_total, cluster)",725"refId": "StandardVariableQuery"726},727"refresh": 2,728"regex": "",729"skipUrlSync": false,730"sort": 0,731"type": "query"732}733]734},735"time": {736"from": "now-7d",737"to": "now"738},739"timepicker": {},740"timezone": "",741"title": "Success Criteria",742"uid": "workspace-success",743"version": 1,744"weekStart": ""745}746747748