Path: blob/main/operations/observability/mixins/meta/dashboards/components/usage.json
2501 views
{1"annotations": {2"list": [3{4"builtIn": 1,5"datasource": {6"type": "grafana",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"description": "",24"editable": true,25"fiscalYearStartMonth": 0,26"graphTooltip": 1,27"id": 54,28"links": [29{30"asDropdown": false,31"icon": "cloud",32"includeVars": false,33"keepTime": false,34"tags": [],35"targetBlank": true,36"title": "GCP Logs",37"tooltip": "See usage component logs in GCP",38"type": "link",39"url": "https://cloudlogging.app.goo.gl/6en8Xwu5tz7mTex9A"40},41{42"asDropdown": false,43"icon": "dashboard",44"includeVars": true,45"keepTime": true,46"tags": [47"grpc",48"server"49],50"targetBlank": true,51"title": "gRPC Server Metrics",52"tooltip": "",53"type": "dashboards",54"url": ""55}56],57"liveNow": false,58"panels": [59{60"gridPos": {61"h": 1,62"w": 24,63"x": 0,64"y": 065},66"id": 8,67"title": "APIs",68"type": "row"69},70{71"datasource": {72"type": "prometheus",73"uid": "${datasource}"74},75"fieldConfig": {76"defaults": {77"color": {78"mode": "palette-classic"79},80"custom": {81"axisCenteredZero": false,82"axisColorMode": "text",83"axisLabel": "",84"axisPlacement": "auto",85"barAlignment": 0,86"drawStyle": "line",87"fillOpacity": 0,88"gradientMode": "none",89"hideFrom": {90"legend": false,91"tooltip": false,92"viz": false93},94"lineInterpolation": "linear",95"lineWidth": 1,96"pointSize": 5,97"scaleDistribution": {98"type": "linear"99},100"showPoints": "auto",101"spanNulls": false,102"stacking": {103"group": "A",104"mode": "none"105},106"thresholdsStyle": {107"mode": "off"108}109},110"mappings": [],111"thresholds": {112"mode": "absolute",113"steps": [114{115"color": "green",116"value": null117},118{119"color": "red",120"value": 80121}122]123},124"unit": "opm"125},126"overrides": []127},128"gridPos": {129"h": 8,130"w": 12,131"x": 0,132"y": 1133},134"id": 10,135"options": {136"legend": {137"calcs": [],138"displayMode": "list",139"placement": "bottom",140"showLegend": true141},142"tooltip": {143"mode": "single",144"sort": "none"145}146},147"targets": [148{149"datasource": {150"type": "prometheus",151"uid": "${datasource}"152},153"editorMode": "code",154"expr": "sum(increase(grpc_server_handled_total{job=\"usage\", grpc_method=~\"$method\", grpc_service=~\"$service\", cluster=~\"$cluster\"}[1m])) by (grpc_method, grpc_code)",155"legendFormat": "__auto",156"range": true,157"refId": "A"158}159],160"title": "Usage RPCs & Codes",161"type": "timeseries"162},163{164"datasource": {165"type": "prometheus",166"uid": "${datasource}"167},168"fieldConfig": {169"defaults": {170"color": {171"mode": "palette-classic"172},173"custom": {174"axisCenteredZero": false,175"axisColorMode": "text",176"axisLabel": "",177"axisPlacement": "auto",178"barAlignment": 0,179"drawStyle": "line",180"fillOpacity": 0,181"gradientMode": "none",182"hideFrom": {183"legend": false,184"tooltip": false,185"viz": false186},187"lineInterpolation": "linear",188"lineWidth": 1,189"pointSize": 5,190"scaleDistribution": {191"type": "linear"192},193"showPoints": "auto",194"spanNulls": false,195"stacking": {196"group": "A",197"mode": "none"198},199"thresholdsStyle": {200"mode": "off"201}202},203"mappings": [],204"thresholds": {205"mode": "absolute",206"steps": [207{208"color": "green",209"value": null210},211{212"color": "red",213"value": 80214}215]216},217"unit": "s"218},219"overrides": []220},221"gridPos": {222"h": 8,223"w": 12,224"x": 12,225"y": 1226},227"id": 12,228"options": {229"legend": {230"calcs": [],231"displayMode": "list",232"placement": "bottom",233"showLegend": true234},235"tooltip": {236"mode": "single",237"sort": "none"238}239},240"targets": [241{242"datasource": {243"type": "prometheus",244"uid": "${datasource}"245},246"editorMode": "code",247"expr": "histogram_quantile(0.95, sum(rate(grpc_server_handling_seconds_bucket{job=\"usage\", cluster=~\"$cluster\", grpc_method=~\"$method\", grpc_service=~\"$service\"}[$__rate_interval])) by (le, grpc_method))",248"legendFormat": "95th, {{grpc_method}}",249"range": true,250"refId": "A"251},252{253"datasource": {254"type": "prometheus",255"uid": "${datasource}"256},257"editorMode": "code",258"expr": "histogram_quantile(0.5, sum(rate(grpc_server_handling_seconds_bucket{job=\"usage\", cluster=~\"$cluster\", grpc_method=~\"$method\", grpc_service=~\"$service\"}[$__rate_interval])) by (le, grpc_method))",259"hide": false,260"legendFormat": "50th, {{grpc_method}}",261"range": true,262"refId": "B"263}264],265"title": "RPC Latency",266"type": "timeseries"267},268{269"collapsed": false,270"gridPos": {271"h": 1,272"w": 24,273"x": 0,274"y": 9275},276"id": 14,277"panels": [],278"title": "Scheduled jobs",279"type": "row"280},281{282"datasource": {283"type": "prometheus",284"uid": "${datasource}"285},286"description": "",287"fieldConfig": {288"defaults": {289"color": {290"mode": "palette-classic"291},292"custom": {293"axisCenteredZero": false,294"axisColorMode": "text",295"axisLabel": "# of events",296"axisPlacement": "auto",297"barAlignment": 0,298"drawStyle": "line",299"fillOpacity": 0,300"gradientMode": "none",301"hideFrom": {302"legend": false,303"tooltip": false,304"viz": false305},306"lineInterpolation": "linear",307"lineWidth": 1,308"pointSize": 5,309"scaleDistribution": {310"type": "linear"311},312"showPoints": "auto",313"spanNulls": false,314"stacking": {315"group": "A",316"mode": "none"317},318"thresholdsStyle": {319"mode": "off"320}321},322"mappings": [],323"thresholds": {324"mode": "absolute",325"steps": [326{327"color": "green",328"value": null329},330{331"color": "red",332"value": 80333}334]335}336},337"overrides": []338},339"gridPos": {340"h": 8,341"w": 12,342"x": 0,343"y": 10344},345"id": 4,346"options": {347"legend": {348"calcs": [],349"displayMode": "list",350"placement": "bottom",351"showLegend": true352},353"tooltip": {354"mode": "single",355"sort": "none"356}357},358"targets": [359{360"datasource": {361"type": "prometheus",362"uid": "${datasource}"363},364"editorMode": "code",365"expr": "sum(increase(gitpod_usage_scheduler_job_started_total{cluster=~\"$cluster\"}[1m])) by (job)",366"legendFormat": "{{job}} started",367"range": true,368"refId": "A"369},370{371"datasource": {372"type": "prometheus",373"uid": "${datasource}"374},375"editorMode": "code",376"exemplar": false,377"expr": "sum(increase(gitpod_usage_scheduler_job_completed_seconds_count{cluster=~\"$cluster\"}[1m])) by (job, outcome)",378"hide": false,379"instant": false,380"legendFormat": "{{job}} completed: {{outcome}}",381"range": true,382"refId": "B"383}384],385"title": "Scheduled jobs started & completed",386"type": "timeseries"387},388{389"datasource": {390"type": "prometheus",391"uid": "${datasource}"392},393"description": "How long a tick of the usage controller takes",394"fieldConfig": {395"defaults": {396"color": {397"mode": "palette-classic"398},399"custom": {400"axisCenteredZero": false,401"axisColorMode": "text",402"axisGridShow": true,403"axisLabel": "",404"axisPlacement": "auto",405"barAlignment": 0,406"drawStyle": "points",407"fillOpacity": 0,408"gradientMode": "none",409"hideFrom": {410"legend": false,411"tooltip": false,412"viz": false413},414"lineInterpolation": "linear",415"lineWidth": 1,416"pointSize": 5,417"scaleDistribution": {418"type": "linear"419},420"showPoints": "auto",421"spanNulls": false,422"stacking": {423"group": "A",424"mode": "none"425},426"thresholdsStyle": {427"mode": "off"428}429},430"mappings": [],431"thresholds": {432"mode": "absolute",433"steps": [434{435"color": "green",436"value": null437},438{439"color": "red",440"value": 80441}442]443},444"unit": "s"445},446"overrides": []447},448"gridPos": {449"h": 8,450"w": 12,451"x": 12,452"y": 10453},454"id": 6,455"options": {456"legend": {457"calcs": [],458"displayMode": "list",459"placement": "bottom",460"showLegend": true461},462"tooltip": {463"mode": "single",464"sort": "none"465}466},467"targets": [468{469"datasource": {470"type": "prometheus",471"uid": "${datasource}"472},473"editorMode": "code",474"expr": "histogram_quantile(0.5, sum(rate(gitpod_usage_scheduler_job_completed_seconds_bucket{cluster=~\"$cluster\"}[$__rate_interval])) by (le))",475"legendFormat": "50th percentile",476"range": true,477"refId": "A"478},479{480"datasource": {481"type": "prometheus",482"uid": "${datasource}"483},484"editorMode": "code",485"expr": "histogram_quantile(0.9, sum(rate(gitpod_usage_scheduler_job_completed_seconds_bucket{cluster=~\"$cluster\"}[$__rate_interval])) by (le))",486"hide": false,487"legendFormat": "90th percentile",488"range": true,489"refId": "B"490}491],492"title": "Scheduled job duration",493"type": "timeseries"494},495{496"collapsed": false,497"gridPos": {498"h": 1,499"w": 24,500"x": 0,501"y": 18502},503"id": 16,504"panels": [],505"title": "Ledger reconciler",506"type": "row"507},508{509"datasource": {510"type": "prometheus",511"uid": "${datasource}"512},513"fieldConfig": {514"defaults": {515"color": {516"mode": "thresholds"517},518"mappings": [],519"thresholds": {520"mode": "absolute",521"steps": [522{523"color": "green",524"value": null525},526{527"color": "red",528"value": 900529}530]531},532"unit": "s"533},534"overrides": []535},536"gridPos": {537"h": 8,538"w": 12,539"x": 0,540"y": 19541},542"id": 18,543"options": {544"colorMode": "value",545"graphMode": "area",546"justifyMode": "auto",547"orientation": "auto",548"reduceOptions": {549"calcs": [550"lastNotNull"551],552"fields": "",553"values": false554},555"textMode": "value"556},557"pluginVersion": "9.1.6",558"targets": [559{560"datasource": {561"type": "prometheus",562"uid": "${datasource}"563},564"editorMode": "code",565"expr": "time() - max_over_time(max(gitpod_usage_ledger_last_completed_time{outcome=\"success\"}[15m]))",566"legendFormat": "__auto",567"range": true,568"refId": "A"569}570],571"title": "Time since last successful run",572"type": "stat"573},574{575"datasource": {576"type": "prometheus",577"uid": "${datasource}"578},579"description": "Rate of records being updated against stripe, by outcome",580"fieldConfig": {581"defaults": {582"color": {583"mode": "palette-classic"584},585"custom": {586"axisCenteredZero": false,587"axisColorMode": "text",588"axisLabel": "",589"axisPlacement": "auto",590"barAlignment": 0,591"drawStyle": "line",592"fillOpacity": 0,593"gradientMode": "none",594"hideFrom": {595"legend": false,596"tooltip": false,597"viz": false598},599"lineInterpolation": "linear",600"lineWidth": 1,601"pointSize": 5,602"scaleDistribution": {603"type": "linear"604},605"showPoints": "auto",606"spanNulls": false,607"stacking": {608"group": "A",609"mode": "none"610},611"thresholdsStyle": {612"mode": "off"613}614},615"mappings": [],616"thresholds": {617"mode": "absolute",618"steps": [619{620"color": "green",621"value": null622},623{624"color": "red",625"value": 80626}627]628}629},630"overrides": []631},632"gridPos": {633"h": 8,634"w": 12,635"x": 12,636"y": 19637},638"id": 22,639"options": {640"legend": {641"calcs": [],642"displayMode": "list",643"placement": "bottom",644"showLegend": true645},646"tooltip": {647"mode": "single",648"sort": "none"649}650},651"targets": [652{653"datasource": {654"type": "prometheus",655"uid": "${datasource}"656},657"editorMode": "code",658"expr": "sum(increase(gitpod_stripe_usage_records_updated_total[1m])) by (outcome)",659"legendFormat": "__auto",660"range": true,661"refId": "A"662}663],664"title": "Stripe Usage Records updated [1m]",665"type": "timeseries"666}667],668"refresh": false,669"schemaVersion": 37,670"style": "dark",671"tags": [672"webapp",673"usage"674],675"templating": {676"list": [677{678"current": {679"selected": false,680"text": "VictoriaMetrics",681"value": "VictoriaMetrics"682},683"hide": 0,684"includeAll": false,685"multi": false,686"name": "datasource",687"options": [],688"query": "prometheus",689"refresh": 1,690"regex": "",691"skipUrlSync": false,692"type": "datasource"693},694{695"allValue": ".*",696"current": {697"selected": false,698"text": "All",699"value": "$__all"700},701"datasource": {702"type": "prometheus",703"uid": "${datasource}"704},705"definition": "label_values(up{job=\"server\"}, cluster)",706"hide": 0,707"includeAll": true,708"label": "Cluster",709"multi": true,710"name": "cluster",711"options": [],712"query": {713"query": "label_values(up{job=\"server\"}, cluster)",714"refId": "StandardVariableQuery"715},716"refresh": 1,717"regex": "",718"skipUrlSync": false,719"sort": 0,720"type": "query"721},722{723"allValue": ".*",724"current": {725"selected": false,726"text": "All",727"value": "$__all"728},729"datasource": {730"type": "prometheus",731"uid": "${datasource}"732},733"definition": "label_values(grpc_server_handled_total{job=\"usage\", cluster=~\"$cluster\"}, grpc_service)",734"hide": 0,735"includeAll": true,736"label": "Service",737"multi": true,738"name": "service",739"options": [],740"query": {741"query": "label_values(grpc_server_handled_total{job=\"usage\", cluster=~\"$cluster\"}, grpc_service)",742"refId": "StandardVariableQuery"743},744"refresh": 1,745"regex": "",746"skipUrlSync": false,747"sort": 0,748"type": "query"749},750{751"allValue": ".*",752"current": {753"selected": true,754"text": [755"All"756],757"value": [758"$__all"759]760},761"datasource": {762"type": "prometheus",763"uid": "${datasource}"764},765"definition": "label_values(grpc_server_handled_total{job=\"usage\", cluster=~\"$cluster\", grpc_service=~\"$service\"}, grpc_method)",766"hide": 0,767"includeAll": true,768"label": "Method",769"multi": true,770"name": "method",771"options": [],772"query": {773"query": "label_values(grpc_server_handled_total{job=\"usage\", cluster=~\"$cluster\", grpc_service=~\"$service\"}, grpc_method)",774"refId": "StandardVariableQuery"775},776"refresh": 1,777"regex": "",778"skipUrlSync": false,779"sort": 0,780"type": "query"781}782]783},784"time": {785"from": "now-6h",786"to": "now"787},788"timepicker": {789"refresh_intervals": [790"30s",791"1m",792"5m",793"15m",794"30m",795"1h",796"2h",797"1d"798]799},800"timezone": "utc",801"title": "Gitpod / Component / Usage",802"uid": "8W7P-jg4z",803"version": 1,804"weekStart": "monday"805}806807808