From aa286043d7bc2bfbad901966e8e266cbce51fb15 Mon Sep 17 00:00:00 2001 From: Chris Marslender Date: Fri, 20 Oct 2023 13:35:35 -0500 Subject: [PATCH 1/2] Add some additional top level metrics --- dashboards/blockchain/blockchain-state.json | 174 +++++++++++++++++--- 1 file changed, 152 insertions(+), 22 deletions(-) diff --git a/dashboards/blockchain/blockchain-state.json b/dashboards/blockchain/blockchain-state.json index 23e504f..3dff98f 100644 --- a/dashboards/blockchain/blockchain-state.json +++ b/dashboards/blockchain/blockchain-state.json @@ -101,7 +101,7 @@ "text": {}, "textMode": "value" }, - "pluginVersion": "10.1.4", + "pluginVersion": "10.1.5", "targets": [ { "datasource": { @@ -165,7 +165,7 @@ "text": {}, "textMode": "value" }, - "pluginVersion": "10.1.4", + "pluginVersion": "10.1.5", "targets": [ { "datasource": { @@ -229,7 +229,7 @@ "text": {}, "textMode": "value" }, - "pluginVersion": "10.1.4", + "pluginVersion": "10.1.5", "targets": [ { "datasource": { @@ -292,7 +292,7 @@ "text": {}, "textMode": "value" }, - "pluginVersion": "10.1.4", + "pluginVersion": "10.1.5", "targets": [ { "datasource": { @@ -315,7 +315,7 @@ "type": "prometheus", "uid": "PB06BBC9CA81C548D" }, - "description": "A constant that adjusts periodically to ensure the chain moves at the desired rate of 4608 blocks per day.\n\nDocs: https://docs.chia.net/docs/03consensus/epochs/", + "description": "Based on 86400 seconds in a day and a target of 4608 blocks in a day, we expect a block every 18.75 seconds.\n\nIf this number is less than 18.75, the chain is moving faster than the target and you would expect difficulty to increase at the next adjustment.\n\nIf the number is greater than 18.75, the chain is moving slower than the target, and you would expect difficulty to decrease at the next adjustment.", "fieldConfig": { "defaults": { "color": { @@ -340,6 +340,69 @@ "x": 16, "y": 1 }, + "id": 25, + "options": { + "colorMode": "value", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "text": {}, + "textMode": "value" + }, + "pluginVersion": "10.1.5", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PB06BBC9CA81C548D" + }, + "exemplar": false, + "expr": "$__range_s/(\n sum without(cluster, application, component, pod, service, instance, namespace, job, instance_name, ref, container, group, endpoint, region) (\n topk(1, \n chia_blockchain_height{network=\"$network\"} or\n chia_full_node_node_height{network=\"$network\"}\n ) != 0\n ) - \n sum without(cluster, application, component, pod, service, instance, namespace, job, instance_name, ref, container, group, endpoint, region) (\n topk(1, \n chia_blockchain_height{network=\"$network\"} offset $__range or\n chia_full_node_node_height{network=\"$network\"} offset $__range\n ) != 0\n )\n)", + "interval": "", + "legendFormat": "Difficulty", + "refId": "A" + } + ], + "title": "Seconds per Block (18.75 Target)", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PB06BBC9CA81C548D" + }, + "description": "A constant that adjusts periodically to ensure the chain moves at the desired rate of 4608 blocks per day.\n\nDocs: https://docs.chia.net/epoch-and-difficulty/", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 3, + "w": 4, + "x": 0, + "y": 4 + }, "id": 18, "options": { "colorMode": "value", @@ -356,7 +419,7 @@ "text": {}, "textMode": "value" }, - "pluginVersion": "10.1.4", + "pluginVersion": "10.1.5", "targets": [ { "datasource": { @@ -378,7 +441,7 @@ "type": "prometheus", "uid": "PB06BBC9CA81C548D" }, - "description": "Based on 86400 seconds in a day and a target of 4608 blocks in a day, we expect a block every 18.75 seconds.\n\nIf this number is less than 18.75, the chain is moving faster than the target and you would expect difficulty to increase at the next adjustment.\n\nIf the number is greater than 18.75, the chain is moving slower than the target, and you would expect difficulty to decrease at the next adjustment.", + "description": "A constant that adjusts periodically to ensure signage points are created at the desired rate\n\nDocs: https://docs.chia.net/epoch-and-difficulty/", "fieldConfig": { "defaults": { "color": { @@ -400,10 +463,10 @@ "gridPos": { "h": 3, "w": 4, - "x": 20, - "y": 1 + "x": 4, + "y": 4 }, - "id": 25, + "id": 43, "options": { "colorMode": "value", "graphMode": "none", @@ -419,21 +482,88 @@ "text": {}, "textMode": "value" }, - "pluginVersion": "10.1.4", + "pluginVersion": "10.1.5", "targets": [ { "datasource": { "type": "prometheus", "uid": "PB06BBC9CA81C548D" }, + "editorMode": "code", "exemplar": false, - "expr": "$__range_s/(\n sum without(cluster, application, component, pod, service, instance, namespace, job, instance_name, ref, container, group, endpoint, region) (\n topk(1, \n chia_blockchain_height{network=\"$network\"} or\n chia_full_node_node_height{network=\"$network\"}\n ) != 0\n ) - \n sum without(cluster, application, component, pod, service, instance, namespace, job, instance_name, ref, container, group, endpoint, region) (\n topk(1, \n chia_blockchain_height{network=\"$network\"} offset $__range or\n chia_full_node_node_height{network=\"$network\"} offset $__range\n ) != 0\n )\n)", + "expr": "sum without(cluster, application, component, pod, service, instance, namespace, job, instance_name, ref, container, group, endpoint, region) (\n topk(1,\n chia_full_node_sub_slot_iters{network=\"$network\"} !=0 \n )\n)", "interval": "", "legendFormat": "Difficulty", + "range": true, "refId": "A" } ], - "title": "Seconds per Block (18.75 Target)", + "title": "Sub Slot Iters", + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "PB06BBC9CA81C548D" + }, + "description": "A lagging indicator of the estimated IPS of the fastest timelord on the network", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + } + }, + "overrides": [] + }, + "gridPos": { + "h": 3, + "w": 4, + "x": 8, + "y": 4 + }, + "id": 44, + "options": { + "colorMode": "value", + "graphMode": "none", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "text": {}, + "textMode": "value" + }, + "pluginVersion": "10.1.5", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "PB06BBC9CA81C548D" + }, + "editorMode": "code", + "exemplar": false, + "expr": "sum without(cluster, application, component, pod, service, instance, namespace, job, instance_name, ref, container, group, endpoint, region) (\n topk(1,\n chia_full_node_sub_slot_iters{network=\"$network\"} !=0 \n )\n)/600", + "interval": "", + "legendFormat": "Difficulty", + "range": true, + "refId": "A" + } + ], + "title": "Estimated IPS", "type": "stat" }, { @@ -446,7 +576,7 @@ "h": 1, "w": 24, "x": 0, - "y": 4 + "y": 7 }, "id": 10, "panels": [], @@ -526,7 +656,7 @@ "h": 8, "w": 8, "x": 0, - "y": 5 + "y": 8 }, "id": 6, "options": { @@ -668,7 +798,7 @@ "h": 8, "w": 8, "x": 8, - "y": 5 + "y": 8 }, "id": 8, "options": { @@ -804,7 +934,7 @@ "h": 8, "w": 8, "x": 16, - "y": 5 + "y": 8 }, "id": 4, "options": { @@ -924,7 +1054,7 @@ "h": 8, "w": 8, "x": 0, - "y": 13 + "y": 16 }, "id": 2, "options": { @@ -1030,7 +1160,7 @@ "h": 8, "w": 8, "x": 8, - "y": 13 + "y": 16 }, "id": 42, "options": { @@ -1093,7 +1223,7 @@ "h": 8, "w": 8, "x": 16, - "y": 13 + "y": 16 }, "id": 41, "options": { @@ -1111,7 +1241,7 @@ "showUnfilled": true, "valueMode": "color" }, - "pluginVersion": "10.1.4", + "pluginVersion": "10.1.5", "targets": [ { "datasource": { @@ -1188,6 +1318,6 @@ "timezone": "", "title": "Blockchain State", "uid": "CL1X4UWnk", - "version": 30, + "version": 31, "weekStart": "" } From 8da8650392dc35380622e6766f28dfbee9c2c731 Mon Sep 17 00:00:00 2001 From: Chris Marslender Date: Fri, 20 Oct 2023 14:16:13 -0500 Subject: [PATCH 2/2] Imporve descriptions and labels for estimated IPS --- dashboards/blockchain/blockchain-state.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dashboards/blockchain/blockchain-state.json b/dashboards/blockchain/blockchain-state.json index 3dff98f..109c2b9 100644 --- a/dashboards/blockchain/blockchain-state.json +++ b/dashboards/blockchain/blockchain-state.json @@ -506,7 +506,7 @@ "type": "prometheus", "uid": "PB06BBC9CA81C548D" }, - "description": "A lagging indicator of the estimated IPS of the fastest timelord on the network", + "description": "Estimated IPS for the network's quickest timelord, derived from the 'sub slot iters' value. On mainnet, this adjusts every 24 hours and every 4 hours on testnet. Expect this value to trail the actual fastest timelord's IPS by a minimum of one epoch.", "fieldConfig": { "defaults": { "color": { @@ -563,7 +563,7 @@ "refId": "A" } ], - "title": "Estimated IPS", + "title": "IPS Estimate (Last Epoch)", "type": "stat" }, {