mirror of
https://github.com/hl-archive-node/nanoreth.git
synced 2025-12-06 10:59:55 +00:00
666 lines
20 KiB
Markdown
666 lines
20 KiB
Markdown
# `reth debug`
|
|
|
|
Various debug routines
|
|
|
|
```bash
|
|
$ reth debug --help
|
|
|
|
Usage: reth debug [OPTIONS] <COMMAND>
|
|
|
|
Commands:
|
|
execution Debug the roundtrip execution of blocks as well as the generated data
|
|
merkle Debug the clean & incremental state root calculations
|
|
in-memory-merkle Debug in-memory state root calculation
|
|
build-block Debug block building
|
|
help Print this message or the help of the given subcommand(s)
|
|
|
|
Options:
|
|
--chain <CHAIN_OR_PATH>
|
|
The chain this node is running.
|
|
Possible values are either a built-in chain or the path to a chain specification file.
|
|
|
|
Built-in chains:
|
|
mainnet, sepolia, goerli, holesky, dev
|
|
|
|
[default: mainnet]
|
|
|
|
--instance <INSTANCE>
|
|
Add a new instance of a node.
|
|
|
|
Configures the ports of the node to avoid conflicts with the defaults. This is useful for running multiple nodes on the same machine.
|
|
|
|
Max number of instances is 200. It is chosen in a way so that it's not possible to have port numbers that conflict with each other.
|
|
|
|
Changes to the following port numbers: - DISCOVERY_PORT: default + `instance` - 1 - AUTH_PORT: default + `instance` * 100 - 100 - HTTP_RPC_PORT: default - `instance` + 1 - WS_RPC_PORT: default + `instance` * 2 - 2
|
|
|
|
[default: 1]
|
|
|
|
-h, --help
|
|
Print help (see a summary with '-h')
|
|
|
|
Logging:
|
|
--log.file.directory <PATH>
|
|
The path to put log files in
|
|
|
|
[default: /reth/logs]
|
|
|
|
--log.file.max-size <SIZE>
|
|
The maximum size (in MB) of one log file
|
|
|
|
[default: 200]
|
|
|
|
--log.file.max-files <COUNT>
|
|
The maximum amount of log files that will be stored. If set to 0, background file logging is disabled
|
|
|
|
[default: 5]
|
|
|
|
--log.file.filter <FILTER>
|
|
The filter to use for logs written to the log file
|
|
|
|
[default: debug]
|
|
|
|
--log.journald
|
|
Write logs to journald
|
|
|
|
--log.journald.filter <FILTER>
|
|
The filter to use for logs written to journald
|
|
|
|
[default: error]
|
|
|
|
--color <COLOR>
|
|
Sets whether or not the formatter emits ANSI terminal escape codes for colors and other text formatting
|
|
|
|
[default: always]
|
|
|
|
Possible values:
|
|
- always: Colors on
|
|
- auto: Colors on
|
|
- never: Colors off
|
|
|
|
Display:
|
|
-v, --verbosity...
|
|
Set the minimum log level.
|
|
|
|
-v Errors
|
|
-vv Warnings
|
|
-vvv Info
|
|
-vvvv Debug
|
|
-vvvvv Traces (warning: very verbose!)
|
|
|
|
-q, --quiet
|
|
Silence all log output
|
|
```
|
|
|
|
## `reth debug execution`
|
|
|
|
Debug the roundtrip execution of blocks as well as the generated data
|
|
|
|
```bash
|
|
$ reth debug execution --help
|
|
|
|
Usage: reth debug execution [OPTIONS] --to <TO>
|
|
|
|
Options:
|
|
--datadir <DATA_DIR>
|
|
The path to the data dir for all reth files and subdirectories.
|
|
|
|
Defaults to the OS-specific data directory:
|
|
|
|
- Linux: `$XDG_DATA_HOME/reth/` or `$HOME/.local/share/reth/`
|
|
- Windows: `{FOLDERID_RoamingAppData}/reth/`
|
|
- macOS: `$HOME/Library/Application Support/reth/`
|
|
|
|
[default: default]
|
|
|
|
--chain <CHAIN_OR_PATH>
|
|
The chain this node is running.
|
|
Possible values are either a built-in chain or the path to a chain specification file.
|
|
|
|
Built-in chains:
|
|
mainnet, sepolia, goerli, holesky, dev
|
|
|
|
[default: mainnet]
|
|
|
|
--instance <INSTANCE>
|
|
Add a new instance of a node.
|
|
|
|
Configures the ports of the node to avoid conflicts with the defaults. This is useful for running multiple nodes on the same machine.
|
|
|
|
Max number of instances is 200. It is chosen in a way so that it's not possible to have port numbers that conflict with each other.
|
|
|
|
Changes to the following port numbers: - DISCOVERY_PORT: default + `instance` - 1 - AUTH_PORT: default + `instance` * 100 - 100 - HTTP_RPC_PORT: default - `instance` + 1 - WS_RPC_PORT: default + `instance` * 2 - 2
|
|
|
|
[default: 1]
|
|
|
|
-h, --help
|
|
Print help (see a summary with '-h')
|
|
|
|
Networking:
|
|
-d, --disable-discovery
|
|
Disable the discovery service
|
|
|
|
--disable-dns-discovery
|
|
Disable the DNS discovery
|
|
|
|
--disable-discv4-discovery
|
|
Disable Discv4 discovery
|
|
|
|
--discovery.addr <DISCOVERY_ADDR>
|
|
The UDP address to use for P2P discovery/networking
|
|
|
|
[default: 0.0.0.0]
|
|
|
|
--discovery.port <DISCOVERY_PORT>
|
|
The UDP port to use for P2P discovery/networking
|
|
|
|
[default: 30303]
|
|
|
|
--trusted-peers <TRUSTED_PEERS>
|
|
Comma separated enode URLs of trusted peers for P2P connections.
|
|
|
|
--trusted-peers enode://abcd@192.168.0.1:30303
|
|
|
|
--trusted-only
|
|
Connect only to trusted peers
|
|
|
|
--bootnodes <BOOTNODES>
|
|
Comma separated enode URLs for P2P discovery bootstrap.
|
|
|
|
Will fall back to a network-specific default if not specified.
|
|
|
|
--peers-file <FILE>
|
|
The path to the known peers file. Connected peers are dumped to this file on nodes
|
|
shutdown, and read on startup. Cannot be used with `--no-persist-peers`.
|
|
|
|
--identity <IDENTITY>
|
|
Custom node identity
|
|
|
|
[default: reth/v0.1.0-alpha.13-10a83e594/aarch64-apple-darwin]
|
|
|
|
--p2p-secret-key <PATH>
|
|
Secret key to use for this node.
|
|
|
|
This will also deterministically set the peer ID. If not specified, it will be set in the data dir for the chain being used.
|
|
|
|
--no-persist-peers
|
|
Do not persist peers.
|
|
|
|
--nat <NAT>
|
|
NAT resolution method (any|none|upnp|publicip|extip:<IP>)
|
|
|
|
[default: any]
|
|
|
|
--addr <ADDR>
|
|
Network listening address
|
|
|
|
[default: 0.0.0.0]
|
|
|
|
--port <PORT>
|
|
Network listening port
|
|
|
|
[default: 30303]
|
|
|
|
--max-outbound-peers <MAX_OUTBOUND_PEERS>
|
|
Maximum number of outbound requests. default: 100
|
|
|
|
--max-inbound-peers <MAX_INBOUND_PEERS>
|
|
Maximum number of inbound requests. default: 30
|
|
|
|
Database:
|
|
--db.log-level <LOG_LEVEL>
|
|
Database logging level. Levels higher than "notice" require a debug build
|
|
|
|
Possible values:
|
|
- fatal: Enables logging for critical conditions, i.e. assertion failures
|
|
- error: Enables logging for error conditions
|
|
- warn: Enables logging for warning conditions
|
|
- notice: Enables logging for normal but significant condition
|
|
- verbose: Enables logging for verbose informational
|
|
- debug: Enables logging for debug-level messages
|
|
- trace: Enables logging for trace debug-level messages
|
|
- extra: Enables logging for extra debug-level messages
|
|
|
|
--to <TO>
|
|
The maximum block height
|
|
|
|
--interval <INTERVAL>
|
|
The block interval for sync and unwind. Defaults to `1000`
|
|
|
|
[default: 1000]
|
|
|
|
Logging:
|
|
--log.file.directory <PATH>
|
|
The path to put log files in
|
|
|
|
[default: /reth/logs]
|
|
|
|
--log.file.max-size <SIZE>
|
|
The maximum size (in MB) of one log file
|
|
|
|
[default: 200]
|
|
|
|
--log.file.max-files <COUNT>
|
|
The maximum amount of log files that will be stored. If set to 0, background file logging is disabled
|
|
|
|
[default: 5]
|
|
|
|
--log.file.filter <FILTER>
|
|
The filter to use for logs written to the log file
|
|
|
|
[default: debug]
|
|
|
|
--log.journald
|
|
Write logs to journald
|
|
|
|
--log.journald.filter <FILTER>
|
|
The filter to use for logs written to journald
|
|
|
|
[default: error]
|
|
|
|
--color <COLOR>
|
|
Sets whether or not the formatter emits ANSI terminal escape codes for colors and other text formatting
|
|
|
|
[default: always]
|
|
|
|
Possible values:
|
|
- always: Colors on
|
|
- auto: Colors on
|
|
- never: Colors off
|
|
|
|
Display:
|
|
-v, --verbosity...
|
|
Set the minimum log level.
|
|
|
|
-v Errors
|
|
-vv Warnings
|
|
-vvv Info
|
|
-vvvv Debug
|
|
-vvvvv Traces (warning: very verbose!)
|
|
|
|
-q, --quiet
|
|
Silence all log output
|
|
```
|
|
|
|
## `reth debug in-memory-merkle`
|
|
|
|
Debug in-memory state root calculation
|
|
|
|
```bash
|
|
$ reth debug in-memory-merkle --help
|
|
|
|
Usage: reth debug in-memory-merkle [OPTIONS]
|
|
|
|
Options:
|
|
--datadir <DATA_DIR>
|
|
The path to the data dir for all reth files and subdirectories.
|
|
|
|
Defaults to the OS-specific data directory:
|
|
|
|
- Linux: `$XDG_DATA_HOME/reth/` or `$HOME/.local/share/reth/`
|
|
- Windows: `{FOLDERID_RoamingAppData}/reth/`
|
|
- macOS: `$HOME/Library/Application Support/reth/`
|
|
|
|
[default: default]
|
|
|
|
--chain <CHAIN_OR_PATH>
|
|
The chain this node is running.
|
|
Possible values are either a built-in chain or the path to a chain specification file.
|
|
|
|
Built-in chains:
|
|
mainnet, sepolia, goerli, holesky, dev
|
|
|
|
[default: mainnet]
|
|
|
|
--instance <INSTANCE>
|
|
Add a new instance of a node.
|
|
|
|
Configures the ports of the node to avoid conflicts with the defaults. This is useful for running multiple nodes on the same machine.
|
|
|
|
Max number of instances is 200. It is chosen in a way so that it's not possible to have port numbers that conflict with each other.
|
|
|
|
Changes to the following port numbers: - DISCOVERY_PORT: default + `instance` - 1 - AUTH_PORT: default + `instance` * 100 - 100 - HTTP_RPC_PORT: default - `instance` + 1 - WS_RPC_PORT: default + `instance` * 2 - 2
|
|
|
|
[default: 1]
|
|
|
|
-h, --help
|
|
Print help (see a summary with '-h')
|
|
|
|
Database:
|
|
--db.log-level <LOG_LEVEL>
|
|
Database logging level. Levels higher than "notice" require a debug build
|
|
|
|
Possible values:
|
|
- fatal: Enables logging for critical conditions, i.e. assertion failures
|
|
- error: Enables logging for error conditions
|
|
- warn: Enables logging for warning conditions
|
|
- notice: Enables logging for normal but significant condition
|
|
- verbose: Enables logging for verbose informational
|
|
- debug: Enables logging for debug-level messages
|
|
- trace: Enables logging for trace debug-level messages
|
|
- extra: Enables logging for extra debug-level messages
|
|
|
|
Networking:
|
|
-d, --disable-discovery
|
|
Disable the discovery service
|
|
|
|
--disable-dns-discovery
|
|
Disable the DNS discovery
|
|
|
|
--disable-discv4-discovery
|
|
Disable Discv4 discovery
|
|
|
|
--discovery.addr <DISCOVERY_ADDR>
|
|
The UDP address to use for P2P discovery/networking
|
|
|
|
[default: 0.0.0.0]
|
|
|
|
--discovery.port <DISCOVERY_PORT>
|
|
The UDP port to use for P2P discovery/networking
|
|
|
|
[default: 30303]
|
|
|
|
--trusted-peers <TRUSTED_PEERS>
|
|
Comma separated enode URLs of trusted peers for P2P connections.
|
|
|
|
--trusted-peers enode://abcd@192.168.0.1:30303
|
|
|
|
--trusted-only
|
|
Connect only to trusted peers
|
|
|
|
--bootnodes <BOOTNODES>
|
|
Comma separated enode URLs for P2P discovery bootstrap.
|
|
|
|
Will fall back to a network-specific default if not specified.
|
|
|
|
--peers-file <FILE>
|
|
The path to the known peers file. Connected peers are dumped to this file on nodes
|
|
shutdown, and read on startup. Cannot be used with `--no-persist-peers`.
|
|
|
|
--identity <IDENTITY>
|
|
Custom node identity
|
|
|
|
[default: reth/v0.1.0-alpha.13-10a83e594/aarch64-apple-darwin]
|
|
|
|
--p2p-secret-key <PATH>
|
|
Secret key to use for this node.
|
|
|
|
This will also deterministically set the peer ID. If not specified, it will be set in the data dir for the chain being used.
|
|
|
|
--no-persist-peers
|
|
Do not persist peers.
|
|
|
|
--nat <NAT>
|
|
NAT resolution method (any|none|upnp|publicip|extip:<IP>)
|
|
|
|
[default: any]
|
|
|
|
--addr <ADDR>
|
|
Network listening address
|
|
|
|
[default: 0.0.0.0]
|
|
|
|
--port <PORT>
|
|
Network listening port
|
|
|
|
[default: 30303]
|
|
|
|
--max-outbound-peers <MAX_OUTBOUND_PEERS>
|
|
Maximum number of outbound requests. default: 100
|
|
|
|
--max-inbound-peers <MAX_INBOUND_PEERS>
|
|
Maximum number of inbound requests. default: 30
|
|
|
|
--retries <RETRIES>
|
|
The number of retries per request
|
|
|
|
[default: 5]
|
|
|
|
--skip-node-depth <SKIP_NODE_DEPTH>
|
|
The depth after which we should start comparing branch nodes
|
|
|
|
Logging:
|
|
--log.file.directory <PATH>
|
|
The path to put log files in
|
|
|
|
[default: /reth/logs]
|
|
|
|
--log.file.max-size <SIZE>
|
|
The maximum size (in MB) of one log file
|
|
|
|
[default: 200]
|
|
|
|
--log.file.max-files <COUNT>
|
|
The maximum amount of log files that will be stored. If set to 0, background file logging is disabled
|
|
|
|
[default: 5]
|
|
|
|
--log.file.filter <FILTER>
|
|
The filter to use for logs written to the log file
|
|
|
|
[default: debug]
|
|
|
|
--log.journald
|
|
Write logs to journald
|
|
|
|
--log.journald.filter <FILTER>
|
|
The filter to use for logs written to journald
|
|
|
|
[default: error]
|
|
|
|
--color <COLOR>
|
|
Sets whether or not the formatter emits ANSI terminal escape codes for colors and other text formatting
|
|
|
|
[default: always]
|
|
|
|
Possible values:
|
|
- always: Colors on
|
|
- auto: Colors on
|
|
- never: Colors off
|
|
|
|
Display:
|
|
-v, --verbosity...
|
|
Set the minimum log level.
|
|
|
|
-v Errors
|
|
-vv Warnings
|
|
-vvv Info
|
|
-vvvv Debug
|
|
-vvvvv Traces (warning: very verbose!)
|
|
|
|
-q, --quiet
|
|
Silence all log output
|
|
```
|
|
|
|
## `reth debug merkle`
|
|
|
|
Debug the clean & incremental state root calculations
|
|
|
|
```bash
|
|
$ reth debug merkle --help
|
|
|
|
Usage: reth debug merkle [OPTIONS] --to <TO>
|
|
|
|
Options:
|
|
--datadir <DATA_DIR>
|
|
The path to the data dir for all reth files and subdirectories.
|
|
|
|
Defaults to the OS-specific data directory:
|
|
|
|
- Linux: `$XDG_DATA_HOME/reth/` or `$HOME/.local/share/reth/`
|
|
- Windows: `{FOLDERID_RoamingAppData}/reth/`
|
|
- macOS: `$HOME/Library/Application Support/reth/`
|
|
|
|
[default: default]
|
|
|
|
--chain <CHAIN_OR_PATH>
|
|
The chain this node is running.
|
|
Possible values are either a built-in chain or the path to a chain specification file.
|
|
|
|
Built-in chains:
|
|
mainnet, sepolia, goerli, holesky, dev
|
|
|
|
[default: mainnet]
|
|
|
|
--instance <INSTANCE>
|
|
Add a new instance of a node.
|
|
|
|
Configures the ports of the node to avoid conflicts with the defaults. This is useful for running multiple nodes on the same machine.
|
|
|
|
Max number of instances is 200. It is chosen in a way so that it's not possible to have port numbers that conflict with each other.
|
|
|
|
Changes to the following port numbers: - DISCOVERY_PORT: default + `instance` - 1 - AUTH_PORT: default + `instance` * 100 - 100 - HTTP_RPC_PORT: default - `instance` + 1 - WS_RPC_PORT: default + `instance` * 2 - 2
|
|
|
|
[default: 1]
|
|
|
|
-h, --help
|
|
Print help (see a summary with '-h')
|
|
|
|
Database:
|
|
--db.log-level <LOG_LEVEL>
|
|
Database logging level. Levels higher than "notice" require a debug build
|
|
|
|
Possible values:
|
|
- fatal: Enables logging for critical conditions, i.e. assertion failures
|
|
- error: Enables logging for error conditions
|
|
- warn: Enables logging for warning conditions
|
|
- notice: Enables logging for normal but significant condition
|
|
- verbose: Enables logging for verbose informational
|
|
- debug: Enables logging for debug-level messages
|
|
- trace: Enables logging for trace debug-level messages
|
|
- extra: Enables logging for extra debug-level messages
|
|
|
|
Networking:
|
|
-d, --disable-discovery
|
|
Disable the discovery service
|
|
|
|
--disable-dns-discovery
|
|
Disable the DNS discovery
|
|
|
|
--disable-discv4-discovery
|
|
Disable Discv4 discovery
|
|
|
|
--discovery.addr <DISCOVERY_ADDR>
|
|
The UDP address to use for P2P discovery/networking
|
|
|
|
[default: 0.0.0.0]
|
|
|
|
--discovery.port <DISCOVERY_PORT>
|
|
The UDP port to use for P2P discovery/networking
|
|
|
|
[default: 30303]
|
|
|
|
--trusted-peers <TRUSTED_PEERS>
|
|
Comma separated enode URLs of trusted peers for P2P connections.
|
|
|
|
--trusted-peers enode://abcd@192.168.0.1:30303
|
|
|
|
--trusted-only
|
|
Connect only to trusted peers
|
|
|
|
--bootnodes <BOOTNODES>
|
|
Comma separated enode URLs for P2P discovery bootstrap.
|
|
|
|
Will fall back to a network-specific default if not specified.
|
|
|
|
--peers-file <FILE>
|
|
The path to the known peers file. Connected peers are dumped to this file on nodes
|
|
shutdown, and read on startup. Cannot be used with `--no-persist-peers`.
|
|
|
|
--identity <IDENTITY>
|
|
Custom node identity
|
|
|
|
[default: reth/v0.1.0-alpha.13-10a83e594/aarch64-apple-darwin]
|
|
|
|
--p2p-secret-key <PATH>
|
|
Secret key to use for this node.
|
|
|
|
This will also deterministically set the peer ID. If not specified, it will be set in the data dir for the chain being used.
|
|
|
|
--no-persist-peers
|
|
Do not persist peers.
|
|
|
|
--nat <NAT>
|
|
NAT resolution method (any|none|upnp|publicip|extip:<IP>)
|
|
|
|
[default: any]
|
|
|
|
--addr <ADDR>
|
|
Network listening address
|
|
|
|
[default: 0.0.0.0]
|
|
|
|
--port <PORT>
|
|
Network listening port
|
|
|
|
[default: 30303]
|
|
|
|
--max-outbound-peers <MAX_OUTBOUND_PEERS>
|
|
Maximum number of outbound requests. default: 100
|
|
|
|
--max-inbound-peers <MAX_INBOUND_PEERS>
|
|
Maximum number of inbound requests. default: 30
|
|
|
|
--retries <RETRIES>
|
|
The number of retries per request
|
|
|
|
[default: 5]
|
|
|
|
--to <TO>
|
|
The height to finish at
|
|
|
|
--skip-node-depth <SKIP_NODE_DEPTH>
|
|
The depth after which we should start comparing branch nodes
|
|
|
|
Logging:
|
|
--log.file.directory <PATH>
|
|
The path to put log files in
|
|
|
|
[default: /reth/logs]
|
|
|
|
--log.file.max-size <SIZE>
|
|
The maximum size (in MB) of one log file
|
|
|
|
[default: 200]
|
|
|
|
--log.file.max-files <COUNT>
|
|
The maximum amount of log files that will be stored. If set to 0, background file logging is disabled
|
|
|
|
[default: 5]
|
|
|
|
--log.file.filter <FILTER>
|
|
The filter to use for logs written to the log file
|
|
|
|
[default: debug]
|
|
|
|
--log.journald
|
|
Write logs to journald
|
|
|
|
--log.journald.filter <FILTER>
|
|
The filter to use for logs written to journald
|
|
|
|
[default: error]
|
|
|
|
--color <COLOR>
|
|
Sets whether or not the formatter emits ANSI terminal escape codes for colors and other text formatting
|
|
|
|
[default: always]
|
|
|
|
Possible values:
|
|
- always: Colors on
|
|
- auto: Colors on
|
|
- never: Colors off
|
|
|
|
Display:
|
|
-v, --verbosity...
|
|
Set the minimum log level.
|
|
|
|
-v Errors
|
|
-vv Warnings
|
|
-vvv Info
|
|
-vvvv Debug
|
|
-vvvvv Traces (warning: very verbose!)
|
|
|
|
-q, --quiet
|
|
Silence all log output
|
|
```
|