From 5cb750161e17a2a268eccb72dbc617ed1b255342 Mon Sep 17 00:00:00 2001 From: Tuyen Nguyen Date: Tue, 12 Mar 2024 14:55:15 +0700 Subject: [PATCH 1/2] chore: track epoch transtion by reason and prepare next epoch duration --- dashboards/lodestar_block_processor.json | 193 ++++++++++++++++++++--- 1 file changed, 175 insertions(+), 18 deletions(-) diff --git a/dashboards/lodestar_block_processor.json b/dashboards/lodestar_block_processor.json index 8e68d611cc0..7fe7ec44956 100644 --- a/dashboards/lodestar_block_processor.json +++ b/dashboards/lodestar_block_processor.json @@ -7,13 +7,6 @@ "pluginId": "prometheus", "pluginName": "Prometheus", "type": "datasource" - }, - { - "description": "", - "label": "Beacon node job name", - "name": "VAR_BEACON_JOB", - "type": "constant", - "value": "beacon" } ], "annotations": { @@ -1915,6 +1908,88 @@ "title": "State SSZ cache miss rate on preState", "type": "timeseries" }, + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "description": "", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "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": [] + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 82 + }, + "id": 536, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "multi", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "editorMode": "code", + "expr": "rate(lodestar_epoch_transition_by_caller_total[$rate_interval]) * 384", + "instant": false, + "legendFormat": "{{caller}}", + "range": true, + "refId": "A" + } + ], + "title": "Epoch transition by reason", + "type": "timeseries" + }, { "datasource": { "type": "prometheus", @@ -1965,7 +2040,7 @@ "gridPos": { "h": 8, "w": 12, - "x": 0, + "x": 12, "y": 82 }, "id": 526, @@ -3455,6 +3530,88 @@ "title": "Runs / epoch", "type": "timeseries" }, + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "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": [], + "unit": "s" + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 149 + }, + "id": 535, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "${DS_PROMETHEUS}" + }, + "editorMode": "code", + "expr": "rate(lodestar_precompute_next_epoch_transition_duration_seconds_sum[$rate_interval])\n/\nrate(lodestar_precompute_next_epoch_transition_duration_seconds_count[$rate_interval])", + "instant": false, + "legendFormat": "prepare_next_epoch_duration", + "range": true, + "refId": "A" + } + ], + "title": "Prepare Next Epoch Duration", + "type": "timeseries" + }, { "collapsed": false, "datasource": { @@ -3465,7 +3622,7 @@ "h": 1, "w": 24, "x": 0, - "y": 149 + "y": 157 }, "id": 136, "panels": [], @@ -3533,7 +3690,7 @@ "h": 8, "w": 12, "x": 0, - "y": 150 + "y": 158 }, "id": 130, "options": { @@ -3633,7 +3790,7 @@ "h": 8, "w": 12, "x": 12, - "y": 150 + "y": 158 }, "id": 140, "options": { @@ -3735,7 +3892,7 @@ "h": 8, "w": 12, "x": 0, - "y": 158 + "y": 166 }, "id": 132, "options": { @@ -3863,7 +4020,7 @@ "h": 8, "w": 12, "x": 12, - "y": 158 + "y": 166 }, "id": 138, "options": { @@ -3985,7 +4142,7 @@ "h": 8, "w": 12, "x": 0, - "y": 166 + "y": 174 }, "id": 531, "options": { @@ -4101,7 +4258,7 @@ "h": 8, "w": 12, "x": 12, - "y": 166 + "y": 174 }, "id": 533, "options": { @@ -4268,14 +4425,14 @@ { "current": { "selected": false, - "text": "${VAR_BEACON_JOB}", - "value": "${VAR_BEACON_JOB}" + "text": "beacon", + "value": "beacon" }, "description": "Job name used in Prometheus config to scrape Beacon node", "hide": 2, "label": "Beacon node job name", "name": "beacon_job", - "query": "${VAR_BEACON_JOB}", + "query": "beacon", "skipUrlSync": false, "type": "constant" } From cb9d3f679202507ad670ee27409eec99bdce1dae Mon Sep 17 00:00:00 2001 From: Nico Flaig Date: Tue, 12 Mar 2024 09:20:14 +0100 Subject: [PATCH 2/2] Restore beacon job variable --- dashboards/lodestar_block_processor.json | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/dashboards/lodestar_block_processor.json b/dashboards/lodestar_block_processor.json index 7fe7ec44956..f5edee221e4 100644 --- a/dashboards/lodestar_block_processor.json +++ b/dashboards/lodestar_block_processor.json @@ -7,6 +7,13 @@ "pluginId": "prometheus", "pluginName": "Prometheus", "type": "datasource" + }, + { + "description": "", + "label": "Beacon node job name", + "name": "VAR_BEACON_JOB", + "type": "constant", + "value": "beacon" } ], "annotations": { @@ -4425,14 +4432,14 @@ { "current": { "selected": false, - "text": "beacon", - "value": "beacon" + "text": "${VAR_BEACON_JOB}", + "value": "${VAR_BEACON_JOB}" }, "description": "Job name used in Prometheus config to scrape Beacon node", "hide": 2, "label": "Beacon node job name", "name": "beacon_job", - "query": "beacon", + "query": "${VAR_BEACON_JOB}", "skipUrlSync": false, "type": "constant" }