Skip to content

Commit

Permalink
[dashboards] sync grafana dashboards
Browse files Browse the repository at this point in the history
  • Loading branch information
rustielin authored Feb 17, 2023
1 parent 1141cb0 commit ffd9397
Show file tree
Hide file tree
Showing 6 changed files with 2,359 additions and 1,196 deletions.
241 changes: 235 additions & 6 deletions dashboards/blockchain-health.json
Original file line number Diff line number Diff line change
Expand Up @@ -1076,7 +1076,7 @@
{
"datasource": { "type": "prometheus", "uid": "${Datasource}" },
"editorMode": "code",
"expr": "clamp_max(aptos_committed_votes_in_window{chain_name=~\"$chain_name\", cluster=~\"$cluster\", metrics_source=~\"$metrics_source\", namespace=~\"$namespace\", kubernetes_pod_name=~\"$kubernetes_pod_name\", role=~\"$role\"} + aptos_committed_proposals_in_window{chain_name=~\"$chain_name\", cluster=~\"$cluster\", metrics_source=~\"$metrics_source\", namespace=~\"$namespace\", kubernetes_pod_name=~\"$kubernetes_pod_name\", role=~\"$role\"}, 1)",
"expr": "max by (kubernetes_pod_name) (clamp_max(aptos_committed_votes_in_window{chain_name=~\"$chain_name\", cluster=~\"$cluster\", metrics_source=~\"$metrics_source\", namespace=~\"$namespace\", kubernetes_pod_name=~\"$kubernetes_pod_name\", role=\"validator\"} + aptos_committed_proposals_in_window{chain_name=~\"$chain_name\", cluster=~\"$cluster\", metrics_source=~\"$metrics_source\", namespace=~\"$namespace\", kubernetes_pod_name=~\"$kubernetes_pod_name\", role=\"validator\"}, 1))",
"legendFormat": "__auto",
"range": true,
"refId": "A"
Expand Down Expand Up @@ -1586,12 +1586,241 @@
],
"type": "table"
},
{
"collapsed": false,
"gridPos": { "h": 1, "w": 24, "x": 0, "y": 77 },
"id": 174,
"panels": [],
"title": "Halted Round Details",
"type": "row"
},
{
"datasource": { "type": "prometheus", "uid": "${Datasource}" },
"description": "When chain is halted, in order for chain to continue to the next round, we need to reach 1 for the timeout votes.",
"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 },
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 1,
"scaleDistribution": { "type": "linear" },
"showPoints": "auto",
"spanNulls": false,
"stacking": { "group": "A", "mode": "none" },
"thresholdsStyle": { "mode": "off" }
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{ "color": "green", "value": null },
{ "color": "red", "value": 80 }
]
}
},
"overrides": []
},
"gridPos": { "h": 8, "w": 8, "x": 0, "y": 78 },
"id": 176,
"options": {
"legend": { "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": false },
"tooltip": { "mode": "multi", "sort": "none" }
},
"targets": [
{
"datasource": { "type": "prometheus", "uid": "${Datasource}" },
"editorMode": "code",
"expr": "100 * sum(max by (peer_id) (aptos_consensus_current_round_timeout_voted_power{chain_name=~\"$chain_name\", cluster=~\"$cluster\", metrics_source=~\"$metrics_source\", namespace=~\"$namespace\", kubernetes_pod_name=~\"$kubernetes_pod_name\", role=\"validator\"})) / max(aptos_total_voting_power{chain_name=~\"$chain_name\", cluster=~\"$cluster\", metrics_source=~\"$metrics_source\", namespace=~\"$namespace\", kubernetes_pod_name=~\"$kubernetes_pod_name\", role=\"validator\"})",
"legendFormat": "__auto",
"range": true,
"refId": "A"
}
],
"title": "% of voting power voted for timeout in the current round",
"type": "timeseries"
},
{
"datasource": { "type": "prometheus", "uid": "${Datasource}" },
"description": "In the current (halted) round, amount of votes collected for the proposal. Hash_index represents each of the proposals - there should be only one proposal, but malicious actors (or nodes with incorrect event history/leader election) can create multiple proposals",
"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 },
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 1,
"scaleDistribution": { "type": "linear" },
"showPoints": "auto",
"spanNulls": false,
"stacking": { "group": "A", "mode": "none" },
"thresholdsStyle": { "mode": "off" }
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{ "color": "green", "value": null },
{ "color": "red", "value": 80 }
]
}
},
"overrides": []
},
"gridPos": { "h": 8, "w": 8, "x": 8, "y": 78 },
"id": 175,
"options": {
"legend": { "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": false },
"tooltip": { "mode": "multi", "sort": "none" }
},
"targets": [
{
"datasource": { "type": "prometheus", "uid": "${Datasource}" },
"editorMode": "code",
"expr": "100 * sum by (hash_index) (max by (peer_id, hash_index) (aptos_consensus_current_round_voted_power{chain_name=~\"$chain_name\", cluster=~\"$cluster\", metrics_source=~\"$metrics_source\", namespace=~\"$namespace\", kubernetes_pod_name=~\"$kubernetes_pod_name\", role=\"validator\"})) / max(aptos_total_voting_power{chain_name=~\"$chain_name\", cluster=~\"$cluster\", metrics_source=~\"$metrics_source\", namespace=~\"$namespace\", kubernetes_pod_name=~\"$kubernetes_pod_name\", role=\"validator\"})",
"legendFormat": "__auto",
"range": true,
"refId": "A"
}
],
"title": "% of voting power voted for (each of) the proposal(s)",
"type": "timeseries"
},
{
"datasource": { "type": "prometheus", "uid": "${Datasource}" },
"description": "for each node, how stale it's consensus participation is. Doesn't show values, if node is not participating in current epoch.",
"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 },
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 1,
"scaleDistribution": { "type": "linear" },
"showPoints": "auto",
"spanNulls": false,
"stacking": { "group": "A", "mode": "none" },
"thresholdsStyle": { "mode": "off" }
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{ "color": "green", "value": null },
{ "color": "red", "value": 80 }
]
}
},
"overrides": []
},
"gridPos": { "h": 8, "w": 8, "x": 16, "y": 78 },
"id": 177,
"options": {
"legend": { "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": false },
"tooltip": { "mode": "multi", "sort": "none" }
},
"targets": [
{
"datasource": { "type": "prometheus", "uid": "${Datasource}" },
"editorMode": "code",
"expr": "max (aptos_consensus_last_voted_epoch{chain_name=~\"$chain_name\", cluster=~\"$cluster\", metrics_source=~\"$metrics_source\", namespace=~\"$namespace\", kubernetes_pod_name=~\"$kubernetes_pod_name\", role=\"validator\"} * 100000 + aptos_consensus_last_voted_round{chain_name=~\"$chain_name\", cluster=~\"$cluster\", metrics_source=~\"$metrics_source\", namespace=~\"$namespace\", kubernetes_pod_name=~\"$kubernetes_pod_name\", role=\"validator\"}) - max by (peer_id) (aptos_consensus_last_voted_epoch{chain_name=~\"$chain_name\", cluster=~\"$cluster\", metrics_source=~\"$metrics_source\", namespace=~\"$namespace\", kubernetes_pod_name=~\"$kubernetes_pod_name\", role=\"validator\"} * 100000 + aptos_consensus_last_voted_round{chain_name=~\"$chain_name\", cluster=~\"$cluster\", metrics_source=~\"$metrics_source\", namespace=~\"$namespace\", kubernetes_pod_name=~\"$kubernetes_pod_name\", role=\"validator\"}) < 90000",
"legendFormat": "__auto",
"range": true,
"refId": "A"
}
],
"title": "(current round - last voted round), for each node",
"type": "timeseries"
},
{
"datasource": { "type": "prometheus", "uid": "${Datasource}" },
"description": "The current round consensus is at, the rate of this is roughly Committed blocks per sec.",
"fieldConfig": {
"defaults": {
"color": { "mode": "palette-classic" },
"custom": {
"axisCenteredZero": false,
"axisColorMode": "text",
"axisLabel": "round #",
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
"fillOpacity": 0,
"gradientMode": "none",
"hideFrom": { "legend": false, "tooltip": false, "viz": false },
"lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": { "type": "linear" },
"showPoints": "never",
"spanNulls": false,
"stacking": { "group": "A", "mode": "none" },
"thresholdsStyle": { "mode": "off" }
},
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{ "color": "green", "value": null },
{ "color": "red", "value": 80 }
]
},
"unit": "short"
},
"overrides": []
},
"gridPos": { "h": 8, "w": 8, "x": 0, "y": 86 },
"id": 178,
"options": {
"legend": { "calcs": [], "displayMode": "list", "placement": "bottom", "showLegend": false },
"tooltip": { "mode": "multi", "sort": "none" }
},
"pluginVersion": "9.1.1",
"targets": [
{
"datasource": { "type": "prometheus", "uid": "${Datasource}" },
"expr": "aptos_consensus_current_round{chain_name=~\"$chain_name\", cluster=~\"$cluster\", metrics_source=~\"$metrics_source\", namespace=~\"$namespace\", kubernetes_pod_name=~\"$kubernetes_pod_name\", role=~\"$role\"}",
"format": "time_series",
"legendFormat": "{{kubernetes_pod_name}}-{{role}}",
"refId": "A"
}
],
"title": "Current Round",
"type": "timeseries"
},
{
"collapsed": true,
"datasource": { "type": "prometheus", "uid": "${Datasource}" },
"editable": false,
"error": false,
"gridPos": { "h": 1, "w": 24, "x": 0, "y": 77 },
"gridPos": { "h": 1, "w": 24, "x": 0, "y": 94 },
"id": 18,
"isNew": false,
"panels": [
Expand Down Expand Up @@ -1710,7 +1939,7 @@
"datasource": { "type": "prometheus", "uid": "${Datasource}" },
"editable": false,
"error": false,
"gridPos": { "h": 1, "w": 24, "x": 0, "y": 78 },
"gridPos": { "h": 1, "w": 24, "x": 0, "y": 95 },
"id": 59,
"isNew": false,
"panels": [
Expand Down Expand Up @@ -1827,7 +2056,7 @@
"datasource": { "type": "prometheus", "uid": "${Datasource}" },
"editable": false,
"error": false,
"gridPos": { "h": 1, "w": 24, "x": 0, "y": 79 },
"gridPos": { "h": 1, "w": 24, "x": 0, "y": 96 },
"id": 55,
"isNew": false,
"panels": [
Expand Down Expand Up @@ -1999,7 +2228,7 @@
"datasource": { "type": "prometheus", "uid": "${Datasource}" },
"editable": false,
"error": false,
"gridPos": { "h": 1, "w": 24, "x": 0, "y": 80 },
"gridPos": { "h": 1, "w": 24, "x": 0, "y": 97 },
"id": 52,
"isNew": false,
"panels": [
Expand Down Expand Up @@ -2372,6 +2601,6 @@
"timezone": "browser",
"title": "Blockchain Health",
"uid": "JnOvNs4Vk",
"version": 35,
"version": 41,
"weekStart": ""
}
Binary file modified dashboards/blockchain-health.json.gz
Binary file not shown.
Loading

0 comments on commit ffd9397

Please sign in to comment.