From fd8228ae721f46b88ebb742d04e890748d723f06 Mon Sep 17 00:00:00 2001 From: Jane Wang Date: Tue, 3 May 2022 12:57:21 -0400 Subject: [PATCH 1/2] Add documentation on node debug page --- docs/troubleshooting/common-errors.md | 1 + docs/troubleshooting/node-debug.md | 89 ++++++++++++++++++++++++++ website/static/images/node-debug.png | Bin 0 -> 94177 bytes 3 files changed, 90 insertions(+) create mode 100644 docs/troubleshooting/node-debug.md create mode 100644 website/static/images/node-debug.png diff --git a/docs/troubleshooting/common-errors.md b/docs/troubleshooting/common-errors.md index a60c982..3b8dac8 100644 --- a/docs/troubleshooting/common-errors.md +++ b/docs/troubleshooting/common-errors.md @@ -3,6 +3,7 @@ id: common-errors title: Common Node Errors and Solutions sidebar_label: Common Node Errors and Solutions description: Common Node Errors and Solutions +sidebar_position: 1 --- diff --git a/docs/troubleshooting/node-debug.md b/docs/troubleshooting/node-debug.md new file mode 100644 index 0000000..08a29ab --- /dev/null +++ b/docs/troubleshooting/node-debug.md @@ -0,0 +1,89 @@ +--- +id: node-debug +title: Node Debug Page +sidebar_label: Node Debug Page +description: How to Use the Node Debug Page +sidebar_position: 2 +--- + +# Node Debug Page + +The nearcore 1.27.0 release will introduce a node debug page on your NEAR node which provides detailed info on last blocks, sync info, chain info, and epoch info. Node operators will have the option to enable this node debug page. + +### Enable Node Debug Page +To enable this debug page on the node, a modificiation is require on `config.json`. Under `rpc` struct, set `enable_debug_rpc`: true. If this line doesn't exist the node's `config.json`, the node operator may add the following: + +``` +"rpc": { + ... + "enable_debug_rpc": true + ... +``` + +After the node starts, head to http://your-node-ip/debug to view the Node Debug Page. + +![img](/images/node-debug.png) + +### Last Blocks +This page displays the most recent 50 blocks on the node. For each block, the following fields are shown: +- Block hash +- Validator who validated the block +- Processing time for the block +- Estimated Next block time +- Gas Price Ratio: How much gas it costs to generate this block. The ratio is the current cost of generating the block in comparison to the cost of genesis block. +- For each shard, the fields are the chunk hash / validator who validated the chunk / Gas / Time (in ms) + + +### Sync Info +This page displays the current point-in-time status of node's peers. + +`Current Sync Status: NoSync (#64817610 DakWGcEUsNpRSXEgBm4FUGEqnJy9qVKouB8V9ek8BqYr)` +- Current Sync Status: NoSync means the node is synced and not syncing. What follows is the block number and block hash. Other status that can be shown are header sync and block sync. + +`Number of peers: 30/40` +This means there are 30 active peers. 40 is the max number of peers. + +`Validators: 100 Known: 100 Reachable: 100` +- `Validators: 100`: is determined in the last epoch by the network. +- `Known: 100`: is that the current node has the validator accountID present in this node's database. +- `Reachable: 100`: If a validator is not reachable from the current node, it will not be included in the count. + +What follows is a table of the node peers. +- `Address`: node IP and port. +- `Validator?`: Shows if the node is a validator. If it is, it shows the pool name. +- `AccountID`: The first line shows the account id for the peer. The second line shows the peer id. +- `Height`: shows the latest block height. +- `Tracked Shards`: shows which shards the node is tracking. +- `Archival`: shows whether the node is archival or not. +- `Route to validators`: The list of validators that this node is one-hop away. + + +### Chain Info +This page displays the current point-in-time status of the node in terms of orphan blocks and missing chunks. + +`Current head: 3mivFUczgGWM6RvwvaT2oQ93zRQQTn3riXNtWxByntD1 @ 64818564`: The current head is the latest block of this node. + +`Current header head: 3mivFUczgGWM6RvwvaT2oQ93zRQQTn3riXNtWxByntD1 @ 64818564`: TBD + +`Orphan Pool`: This table shows a list of orphan blocks for this current node. The block hash and block height are listed. (e.g. It is possible that this node received a block for which its predecessor is unknown. Once the predecessor is known, the orphan block would no longer be in the pool.) + +`Missing Chunks Pool` +This table shows a list of blocks that are missing some of its chunks in this node. The block hash and block height are listed. As your node request for missed chunks, you can refresh the page to see the latest status and to see if the chunk has been received and stored. If a chunk has been no longer missing, it will be removed from this table. + + +### Epoch Info + +The epoch displays the current epoch and the most recent five epoches. + +- `Epoch id`: block hash of the final block in epoch T-2. +- `Start height`: the first block of the epoch. +- `Protocol version`: The protocol version of the epoch. +- `First block`: Block hash of the first block in the epoch. +- `Epoch start`: How long ago the epoch has restarted. + +The table below displays the validators in the current epoch and the last five epochs (represented by the epoch hash) with either TRUE or FALSE. + + +>Got a question? + + Ask it on StackOverflow! diff --git a/website/static/images/node-debug.png b/website/static/images/node-debug.png new file mode 100644 index 0000000000000000000000000000000000000000..48e7adba808e93ac7f468477811b9cb45e6750ac GIT binary patch literal 94177 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 Date: Wed, 4 May 2022 18:13:20 -0400 Subject: [PATCH 2/2] Add doc updates --- docs/troubleshooting/node-debug.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/troubleshooting/node-debug.md b/docs/troubleshooting/node-debug.md index 08a29ab..388290d 100644 --- a/docs/troubleshooting/node-debug.md +++ b/docs/troubleshooting/node-debug.md @@ -20,7 +20,7 @@ To enable this debug page on the node, a modificiation is require on `config.jso ... ``` -After the node starts, head to http://your-node-ip/debug to view the Node Debug Page. +After the node starts, head to `http:///debug` to view the Node Debug Page. ![img](/images/node-debug.png) @@ -55,15 +55,15 @@ What follows is a table of the node peers. - `Height`: shows the latest block height. - `Tracked Shards`: shows which shards the node is tracking. - `Archival`: shows whether the node is archival or not. -- `Route to validators`: The list of validators that this node is one-hop away. - +- `Route to validators`: List of validators, the paths to which contain this current node as a peer. ### Chain Info This page displays the current point-in-time status of the node in terms of orphan blocks and missing chunks. `Current head: 3mivFUczgGWM6RvwvaT2oQ93zRQQTn3riXNtWxByntD1 @ 64818564`: The current head is the latest block of this node. -`Current header head: 3mivFUczgGWM6RvwvaT2oQ93zRQQTn3riXNtWxByntD1 @ 64818564`: TBD +`Current header head: 3mivFUczgGWM6RvwvaT2oQ93zRQQTn3riXNtWxByntD1 @ 64818564`: +The header_head is the latest 'header' that we know of. If node is up-to-date, then head is equal to header_head. If the node is syncing, the header_head may be larger than the head. `Orphan Pool`: This table shows a list of orphan blocks for this current node. The block hash and block height are listed. (e.g. It is possible that this node received a block for which its predecessor is unknown. Once the predecessor is known, the orphan block would no longer be in the pool.) @@ -79,9 +79,9 @@ The epoch displays the current epoch and the most recent five epoches. - `Start height`: the first block of the epoch. - `Protocol version`: The protocol version of the epoch. - `First block`: Block hash of the first block in the epoch. -- `Epoch start`: How long ago the epoch has restarted. +- `Epoch start`: How long ago the epoch has started. -The table below displays the validators in the current epoch and the last five epochs (represented by the epoch hash) with either TRUE or FALSE. +The table below displays the validator history in the current epoch and the last five epochs (represented by the epoch hash) with either TRUE or FALSE. >Got a question?