From 5a33c53cda786bab85a55b722029a16034897e1b Mon Sep 17 00:00:00 2001 From: alex Date: Mon, 2 Feb 2026 18:03:35 +0300 Subject: [PATCH] change in TUSD metrics ( many changes, like: deletion non actual panels, add units for understandble and etc) --- tusd_metrics.json | 539 ++++++++++++++++++++++++++-------------------- 1 file changed, 307 insertions(+), 232 deletions(-) diff --git a/tusd_metrics.json b/tusd_metrics.json index 1905cb8..e7fda41 100644 --- a/tusd_metrics.json +++ b/tusd_metrics.json @@ -18,7 +18,7 @@ "editable": true, "fiscalYearStartMonth": 0, "graphTooltip": 0, - "id": 18, + "id": 47, "links": [], "panels": [ { @@ -43,7 +43,7 @@ "fieldConfig": { "defaults": { "color": { - "mode": "palette-classic" + "mode": "palette-classic-by-name" }, "custom": { "axisBorderShow": false, @@ -91,7 +91,8 @@ "value": 80 } ] - } + }, + "unit": "bytes" }, "overrides": [] }, @@ -140,6 +141,7 @@ "type": "prometheus", "uid": "prom" }, + "description": "старт tusd", "fieldConfig": { "defaults": { "color": { @@ -164,7 +166,7 @@ "overrides": [] }, "gridPos": { - "h": 6, + "h": 7, "w": 14, "x": 10, "y": 1 @@ -201,107 +203,6 @@ "title": "Process Start Time (hours)", "type": "gauge" }, - { - "datasource": { - "type": "prometheus", - "uid": "prom" - }, - "description": "Показывает производительность GC и его частоту. ", - "fieldConfig": { - "defaults": { - "color": { - "mode": "palette-classic" - }, - "custom": { - "axisBorderShow": false, - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "barAlignment": 0, - "barWidthFactor": 0.6, - "drawStyle": "line", - "fillOpacity": 0, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "insertNulls": false, - "lineInterpolation": "linear", - "lineWidth": 1, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" - }, - "showPoints": "auto", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "none" - }, - "thresholdsStyle": { - "mode": "off" - } - }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": 0 - }, - { - "color": "red", - "value": 80 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 7, - "w": 14, - "x": 10, - "y": 7 - }, - "id": 7, - "options": { - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "bottom", - "showLegend": true - }, - "tooltip": { - "hideZeros": false, - "mode": "single", - "sort": "none" - } - }, - "pluginVersion": "12.1.0", - "targets": [ - { - "editorMode": "code", - "expr": "rate(go_gc_duration_seconds_sum{job=\"integrations/tusd\", instance=~\"$Instance\", pod=~\"$pod\"}[5m])", - "legendFormat": "{{instance}} pod : {{pod}} :GC Time Rate (s/sec)", - "range": true, - "refId": "A" - }, - { - "editorMode": "code", - "expr": "go_memstats_next_gc_bytes{job=\"integrations/tusd\", instance=~\"$Instance\", pod=~\"$pod\"}", - "legendFormat": "{{instance}} pod : {{pod}} : Next GC Threshold (bytes)", - "range": true, - "refId": "B" - } - ], - "title": "GC Duration & Next GC", - "type": "timeseries" - }, { "datasource": { "type": "prometheus", @@ -373,6 +274,197 @@ "title": "Open Connections", "type": "gauge" }, + { + "datasource": { + "type": "prometheus", + "uid": "prom" + }, + "description": "доля времени, которое процесс тратит на GC (CPU-time на GC)", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": 0 + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "percent" + }, + "overrides": [] + }, + "gridPos": { + "h": 7, + "w": 7, + "x": 10, + "y": 8 + }, + "id": 7, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "12.1.0", + "targets": [ + { + "editorMode": "code", + "expr": "rate(go_gc_duration_seconds_sum{job=\"integrations/tusd\", instance=~\"$Instance\", pod=~\"$pod\"}[5m]) * 100", + "legendFormat": "{{instance}} pod : {{pod}}", + "range": true, + "refId": "A" + } + ], + "title": "GC Duration", + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prom" + }, + "description": "Объём heap-памяти, при достижении которого Go runtime запустит следующий garbage collection.\nНе отражает текущее потребление памяти.", + "fieldConfig": { + "defaults": { + "color": { + "fixedColor": "dark-orange", + "mode": "fixed" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "barWidthFactor": 0.6, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": 0 + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "bytes" + }, + "overrides": [] + }, + "gridPos": { + "h": 7, + "w": 7, + "x": 17, + "y": 8 + }, + "id": 28, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "hideZeros": false, + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "12.1.0", + "targets": [ + { + "editorMode": "code", + "expr": "go_memstats_next_gc_bytes{job=\"integrations/tusd\", instance=~\"$Instance\", pod=~\"$pod\"}", + "legendFormat": "{{instance}} pod : {{pod}}", + "range": true, + "refId": "A" + } + ], + "title": "Go next GC heap target", + "type": "timeseries" + }, { "datasource": { "type": "prometheus", @@ -504,7 +596,7 @@ "h": 12, "w": 14, "x": 10, - "y": 14 + "y": 15 }, "id": 9, "options": { @@ -602,7 +694,7 @@ "overrides": [] }, "gridPos": { - "h": 8, + "h": 9, "w": 10, "x": 0, "y": 18 @@ -699,7 +791,7 @@ "h": 6, "w": 24, "x": 0, - "y": 26 + "y": 27 }, "id": 10, "options": { @@ -755,6 +847,7 @@ "type": "prometheus", "uid": "prom" }, + "description": "использование CPU by TUSD", "fieldConfig": { "defaults": { "color": { @@ -814,7 +907,7 @@ "h": 7, "w": 8, "x": 0, - "y": 32 + "y": 33 }, "id": 4, "options": { @@ -908,7 +1001,7 @@ "h": 7, "w": 7, "x": 8, - "y": 32 + "y": 33 }, "id": 6, "options": { @@ -1001,7 +1094,8 @@ "value": 80 } ] - } + }, + "unit": "bytes" }, "overrides": [] }, @@ -1009,7 +1103,7 @@ "h": 7, "w": 9, "x": 15, - "y": 32 + "y": 33 }, "id": 8, "options": { @@ -1051,7 +1145,7 @@ "h": 1, "w": 24, "x": 0, - "y": 39 + "y": 40 }, "id": 20, "panels": [], @@ -1114,7 +1208,8 @@ "value": 80 } ] - } + }, + "unit": "ops" }, "overrides": [] }, @@ -1122,7 +1217,7 @@ "h": 8, "w": 12, "x": 0, - "y": 40 + "y": 41 }, "id": 22, "options": { @@ -1207,7 +1302,8 @@ "value": 80 } ] - } + }, + "unit": "ops" }, "overrides": [] }, @@ -1215,7 +1311,7 @@ "h": 8, "w": 12, "x": 12, - "y": 40 + "y": 41 }, "id": 21, "options": { @@ -1301,7 +1397,8 @@ "value": 80 } ] - } + }, + "unit": "ms" }, "overrides": [] }, @@ -1309,7 +1406,7 @@ "h": 5, "w": 24, "x": 0, - "y": 48 + "y": 49 }, "id": 11, "options": { @@ -1351,7 +1448,7 @@ "h": 1, "w": 24, "x": 0, - "y": 53 + "y": 54 }, "id": 23, "panels": [], @@ -1420,9 +1517,9 @@ }, "gridPos": { "h": 8, - "w": 18, + "w": 11, "x": 0, - "y": 54 + "y": 55 }, "id": 26, "options": { @@ -1464,6 +1561,78 @@ "title": "S3 Upload Semaphore Demand vs Limit", "type": "timeseries" }, + { + "datasource": { + "type": "prometheus", + "uid": "prom" + }, + "description": "99-й перцентиль длительности операций записи на диск в S3.\nПоказывает худшие 1% disk write операций и используется для выявления деградаций и длинных хвостов задержек.", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": 0 + } + ] + }, + "unit": "ms" + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 7, + "x": 11, + "y": 55 + }, + "id": 13, + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "percentChangeColorMode": "standard", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": true, + "text": { + "titleSize": 11, + "valueSize": 50 + }, + "textMode": "auto", + "wideLayout": true + }, + "pluginVersion": "12.1.0", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prom" + }, + "editorMode": "code", + "expr": "tusd_s3_disk_write_duration_ms{job=\"integrations/tusd\", instance=~\"$Instance\", pod=~\"$pod\", quantile=\"0.99\"}", + "hide": false, + "instant": false, + "legendFormat": "{{instance}} pod : {{pod}} : tusd Disk Write Time {{quantile}}", + "range": true, + "refId": "C" + } + ], + "title": "S3 disk write latency (p99)", + "type": "stat" + }, { "datasource": { "type": "prometheus", @@ -1487,7 +1656,8 @@ "value": 80 } ] - } + }, + "unit": "ms" }, "overrides": [] }, @@ -1495,7 +1665,7 @@ "h": 8, "w": 6, "x": 18, - "y": 54 + "y": 55 }, "id": 25, "options": { @@ -1590,7 +1760,7 @@ "h": 9, "w": 24, "x": 0, - "y": 62 + "y": 63 }, "id": 24, "options": { @@ -1619,112 +1789,13 @@ "title": "Request Duration (Avg, ms)", "type": "timeseries" }, - { - "datasource": { - "type": "prometheus", - "uid": "prom" - }, - "description": "Среднюю продолжительность записи на диск", - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": 0 - }, - { - "color": "red", - "value": 80 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 15, - "w": 24, - "x": 0, - "y": 71 - }, - "id": 13, - "options": { - "colorMode": "value", - "graphMode": "area", - "justifyMode": "auto", - "orientation": "auto", - "percentChangeColorMode": "standard", - "reduceOptions": { - "calcs": [ - "lastNotNull" - ], - "fields": "", - "values": false - }, - "showPercentChange": true, - "text": { - "titleSize": 15, - "valueSize": 25 - }, - "textMode": "auto", - "wideLayout": true - }, - "pluginVersion": "12.1.0", - "targets": [ - { - "datasource": { - "type": "prometheus", - "uid": "prom" - }, - "editorMode": "code", - "expr": "tusd_s3_disk_write_duration_ms_sum{job=\"integrations/tusd\", instance=~\"$Instance\", pod=~\"$pod\"}", - "legendFormat": "{{instance}} pod : {{pod}} : Disk Write Duration sum (ms)", - "range": true, - "refId": "A" - }, - { - "datasource": { - "type": "prometheus", - "uid": "prom" - }, - "editorMode": "code", - "expr": "tusd_s3_disk_write_duration_ms_count{job=\"integrations/tusd\", instance=~\"$Instance\", pod=~\"$pod\"}", - "hide": false, - "instant": false, - "legendFormat": "{{instance}} pod : {{pod}} : Disk Write Duration count (ms)", - "range": true, - "refId": "B" - }, - { - "datasource": { - "type": "prometheus", - "uid": "prom" - }, - "editorMode": "code", - "expr": "tusd_s3_disk_write_duration_ms{job=\"integrations/tusd\", instance=~\"$Instance\", pod=~\"$pod\"}", - "hide": false, - "instant": false, - "legendFormat": "{{instance}} pod : {{pod}} : tusd Disk Write Time {{quantile}}", - "range": true, - "refId": "C" - } - ], - "title": "S3 Disk operations", - "type": "stat" - }, { "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, - "y": 86 + "y": 72 }, "id": 19, "panels": [], @@ -1795,7 +1866,7 @@ "h": 8, "w": 12, "x": 0, - "y": 87 + "y": 73 }, "id": 16, "options": { @@ -1888,7 +1959,7 @@ "h": 8, "w": 12, "x": 12, - "y": 87 + "y": 73 }, "id": 17, "options": { @@ -1981,7 +2052,7 @@ "h": 5, "w": 24, "x": 0, - "y": 95 + "y": 81 }, "id": 27, "options": { @@ -2041,7 +2112,9 @@ { "current": { "text": "All", - "value": "$__all" + "value": [ + "$__all" + ] }, "definition": "label_values({cluster=~\"$cluster\", job=\"integrations/tusd\"},instance)", "includeAll": true, @@ -2060,7 +2133,9 @@ { "current": { "text": "All", - "value": "$__all" + "value": [ + "$__all" + ] }, "definition": "label_values({cluster=~\"$cluster\", job=\"integrations/tusd\"},pod)", "includeAll": true, @@ -2085,6 +2160,6 @@ "timepicker": {}, "timezone": "browser", "title": "Tusd Metrics", - "uid": "tusd-metric-new-try", - "version": 3 + "uid": "eeeebd69-5bb9-4715-feeewwds-544", + "version": 17 } \ No newline at end of file