From 00aac17ce075ffb92cb63adedb656a0be41e6a82 Mon Sep 17 00:00:00 2001 From: HuaiyuXu <391585975@qq.com> Date: Thu, 12 Sep 2024 14:29:30 +0800 Subject: [PATCH] pkg/metrics: add panels for golang gc rate and GOGC/GOMEMLIMIT (#56033) ref pingcap/tidb#55390 --- pkg/metrics/grafana/tidb_runtime.json | 273 +++++++++++++++++++++++++- 1 file changed, 272 insertions(+), 1 deletion(-) diff --git a/pkg/metrics/grafana/tidb_runtime.json b/pkg/metrics/grafana/tidb_runtime.json index 2f9aae9776..dcfc277c28 100644 --- a/pkg/metrics/grafana/tidb_runtime.json +++ b/pkg/metrics/grafana/tidb_runtime.json @@ -2051,6 +2051,153 @@ "alignLevel": null } }, + { + "cacheTimeout": null, + "datasource": "${DS_TEST-CLUSTER}", + "description": "auto gc: completed GC cycles generated by the Go runtime\nforced gc: completed GC cycles forced by the application\ntotal gc: all completed GC cycles\ngc limiter enabled: the number of times the GC CPU limiter has been enabled over the past", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "graph": false, + "legend": false, + "tooltip": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": true + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "none" + }, + "overrides": [ + { + "matcher": { + "id": "byFrameRefID", + "options": "D" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "right" + }, + { + "id": "unit", + "value": "short" + } + ] + } + ] + }, + "gridPos": { + "h": 7, + "w": 12, + "x": 12, + "y": 50 + }, + "id": 85, + "links": [], + "options": { + "graph": {}, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltipOptions": { + "mode": "single" + } + }, + "pluginVersion": "7.5.17", + "scopedVars": { + "instance": { + "selected": true, + "text": "127.0.0.1:10080", + "value": "127.0.0.1:10080" + } + }, + "targets": [ + { + "exemplar": true, + "expr": "irate(go_gc_cycles_automatic_gc_cycles_total{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\", instance=~\"$instance\"}[30s])", + "format": "time_series", + "hide": false, + "instant": false, + "interval": "", + "intervalFactor": 1, + "legendFormat": "auto gc-{{instance}}", + "refId": "A", + "step": 40 + }, + { + "exemplar": true, + "expr": "irate(go_gc_cycles_forced_gc_cycles_total{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\", instance=~\"$instance\"}[30s])", + "format": "time_series", + "hide": false, + "instant": false, + "interval": "", + "intervalFactor": 1, + "legendFormat": "forced gc-{{instance}}", + "refId": "B", + "step": 40 + }, + { + "exemplar": true, + "expr": "irate(go_gc_cycles_total_gc_cycles_total{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\", instance=~\"$instance\"}[30s])", + "format": "time_series", + "hide": false, + "instant": false, + "interval": "", + "intervalFactor": 1, + "legendFormat": "total gc-{{instance}}", + "refId": "C", + "step": 40 + }, + { + "exemplar": true, + "expr": "changes(go_gc_limiter_last_enabled_gc_cycle{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\", instance=~\"$instance\"}[30s])", + "format": "time_series", + "hide": true, + "instant": false, + "interval": "", + "intervalFactor": 1, + "legendFormat": "gc limiter enabled-{{instance}}", + "refId": "D", + "step": 40 + } + ], + "timeFrom": null, + "timeShift": null, + "title": "golang GC", + "type": "timeseries" + }, { "aliasColors": {}, "bars": false, @@ -2116,7 +2263,7 @@ "instant": false, "interval": "", "intervalFactor": 1, - "legendFormat": "mutex_wait_seconds", + "legendFormat": "mutex_wait_seconds-{{instance}}", "refId": "A", "step": 40 } @@ -2162,6 +2309,130 @@ "align": false, "alignLevel": null } + }, + { + "cacheTimeout": null, + "datasource": "lakehouse", + "description": "Value of GOGC and GOMEMLIMIT", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 10, + "gradientMode": "none", + "hideFrom": { + "graph": false, + "legend": false, + "tooltip": false + }, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "never", + "spanNulls": false + }, + "mappings": [], + "min": 0, + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "none" + }, + "overrides": [ + { + "matcher": { + "id": "byFrameRefID", + "options": "B" + }, + "properties": [ + { + "id": "custom.axisPlacement", + "value": "right" + }, + { + "id": "unit", + "value": "bytes" + } + ] + } + ] + }, + "gridPos": { + "h": 7, + "w": 12, + "x": 12, + "y": 57 + }, + "id": 87, + "links": [], + "options": { + "graph": {}, + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom" + }, + "tooltipOptions": { + "mode": "single" + } + }, + "pluginVersion": "7.5.17", + "scopedVars": { + "instance": { + "selected": true, + "text": "127.0.0.1:10080", + "value": "127.0.0.1:10080" + } + }, + "targets": [ + { + "exemplar": true, + "expr": "go_gc_gogc_percent{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\", instance=~\"$instance\"}", + "format": "time_series", + "hide": false, + "instant": false, + "interval": "", + "intervalFactor": 1, + "legendFormat": "GOGC-{{instance}}", + "refId": "A", + "step": 40 + }, + { + "exemplar": true, + "expr": "go_gc_gomemlimit_bytes{k8s_cluster=\"$k8s_cluster\",tidb_cluster=\"$tidb_cluster\", instance=~\"$instance\"}", + "format": "time_series", + "hide": false, + "instant": false, + "interval": "", + "intervalFactor": 1, + "legendFormat": "GOMEMLIMIT-{{instance}}", + "refId": "B", + "step": 40 + } + ], + "timeFrom": null, + "timeShift": null, + "title": "GOGC & GOMEMLIMIT", + "type": "timeseries" } ], "repeat": "instance",