mirror of
https://github.com/paradigmxyz/reth.git
synced 2026-01-09 15:28:01 -05:00
257 lines
10 KiB
Plaintext
257 lines
10 KiB
Plaintext
# op-reth init
|
|
|
|
Initialize the database from a genesis file
|
|
|
|
```bash
|
|
$ op-reth init --help
|
|
```
|
|
```txt
|
|
Usage: op-reth init [OPTIONS]
|
|
|
|
Options:
|
|
-h, --help
|
|
Print help (see a summary with '-h')
|
|
|
|
Datadir:
|
|
--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]
|
|
|
|
--datadir.static-files <PATH>
|
|
The absolute path to store static files in.
|
|
|
|
--datadir.rocksdb <PATH>
|
|
The absolute path to store `RocksDB` database in.
|
|
|
|
--config <FILE>
|
|
The path to the configuration file to use
|
|
|
|
--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:
|
|
optimism, optimism_sepolia, optimism-sepolia, base, base_sepolia, base-sepolia, arena-z, arena-z-sepolia, automata, base-devnet-0-sepolia-dev-0, bob, boba-sepolia, boba, camp-sepolia, celo, creator-chain-testnet-sepolia, cyber, cyber-sepolia, ethernity, ethernity-sepolia, fraxtal, funki, funki-sepolia, hashkeychain, ink, ink-sepolia, lisk, lisk-sepolia, lyra, metal, metal-sepolia, mint, mode, mode-sepolia, oplabs-devnet-0-sepolia-dev-0, orderly, ozean-sepolia, pivotal-sepolia, polynomial, race, race-sepolia, radius_testnet-sepolia, redstone, rehearsal-0-bn-0-rehearsal-0-bn, rehearsal-0-bn-1-rehearsal-0-bn, settlus-mainnet, settlus-sepolia-sepolia, shape, shape-sepolia, silent-data-mainnet, snax, soneium, soneium-minato-sepolia, sseed, swan, swell, tbn, tbn-sepolia, unichain, unichain-sepolia, worldchain, worldchain-sepolia, xterio-eth, zora, zora-sepolia, dev
|
|
|
|
[default: optimism]
|
|
|
|
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
|
|
|
|
--db.exclusive <EXCLUSIVE>
|
|
Open environment in exclusive/monopolistic mode. Makes it possible to open a database on an NFS volume
|
|
|
|
[possible values: true, false]
|
|
|
|
--db.max-size <MAX_SIZE>
|
|
Maximum database size (e.g., 4TB, 8TB).
|
|
|
|
This sets the "map size" of the database. If the database grows beyond this limit, the node will stop with an "environment map size limit reached" error.
|
|
|
|
The default value is 8TB.
|
|
|
|
--db.page-size <PAGE_SIZE>
|
|
Database page size (e.g., 4KB, 8KB, 16KB).
|
|
|
|
Specifies the page size used by the MDBX database.
|
|
|
|
The page size determines the maximum database size. MDBX supports up to 2^31 pages, so with the default 4KB page size, the maximum database size is 8TB. To allow larger databases, increase this value to 8KB or higher.
|
|
|
|
WARNING: This setting is only configurable at database creation; changing it later requires re-syncing.
|
|
|
|
--db.growth-step <GROWTH_STEP>
|
|
Database growth step (e.g., 4GB, 4KB)
|
|
|
|
--db.read-transaction-timeout <READ_TRANSACTION_TIMEOUT>
|
|
Read transaction timeout in seconds, 0 means no timeout
|
|
|
|
--db.max-readers <MAX_READERS>
|
|
Maximum number of readers allowed to access the database concurrently
|
|
|
|
--db.sync-mode <SYNC_MODE>
|
|
Controls how aggressively the database synchronizes data to disk
|
|
|
|
Static Files:
|
|
--static-files.blocks-per-file.headers <BLOCKS_PER_FILE_HEADERS>
|
|
Number of blocks per file for the headers segment
|
|
|
|
--static-files.blocks-per-file.transactions <BLOCKS_PER_FILE_TRANSACTIONS>
|
|
Number of blocks per file for the transactions segment
|
|
|
|
--static-files.blocks-per-file.receipts <BLOCKS_PER_FILE_RECEIPTS>
|
|
Number of blocks per file for the receipts segment
|
|
|
|
--static-files.blocks-per-file.transaction-senders <BLOCKS_PER_FILE_TRANSACTION_SENDERS>
|
|
Number of blocks per file for the transaction senders segment
|
|
|
|
--static-files.receipts
|
|
Store receipts in static files instead of the database.
|
|
|
|
When enabled, receipts will be written to static files on disk instead of the database.
|
|
|
|
Note: This setting can only be configured at genesis initialization. Once the node has been initialized, changing this flag requires re-syncing from scratch.
|
|
|
|
--static-files.transaction-senders
|
|
Store transaction senders in static files instead of the database.
|
|
|
|
When enabled, transaction senders will be written to static files on disk instead of the database.
|
|
|
|
Note: This setting can only be configured at genesis initialization. Once the node has been initialized, changing this flag requires re-syncing from scratch.
|
|
|
|
--storage.tx-hash-numbers-in-rocksdb
|
|
Store `TransactionHashNumbers` table in `RocksDB` instead of MDBX.
|
|
|
|
Note: This setting can only be configured at genesis initialization. Once the node has been initialized, changing this flag requires re-syncing from scratch.
|
|
|
|
--storage.storages-history-in-rocksdb
|
|
Store `StoragesHistory` table in `RocksDB` instead of MDBX.
|
|
|
|
Note: This setting can only be configured at genesis initialization. Once the node has been initialized, changing this flag requires re-syncing from scratch.
|
|
|
|
--storage.account-history-in-rocksdb
|
|
Store `AccountsHistory` table in `RocksDB` instead of MDBX.
|
|
|
|
Note: This setting can only be configured at genesis initialization. Once the node has been initialized, changing this flag requires re-syncing from scratch.
|
|
|
|
Logging:
|
|
--log.stdout.format <FORMAT>
|
|
The format to use for logs written to stdout
|
|
|
|
Possible values:
|
|
- json: Represents JSON formatting for logs. This format outputs log records as JSON objects, making it suitable for structured logging
|
|
- log-fmt: Represents logfmt (key=value) formatting for logs. This format is concise and human-readable, typically used in command-line applications
|
|
- terminal: Represents terminal-friendly formatting for logs
|
|
|
|
[default: terminal]
|
|
|
|
--log.stdout.filter <FILTER>
|
|
The filter to use for logs written to stdout
|
|
|
|
[default: ]
|
|
|
|
--log.file.format <FORMAT>
|
|
The format to use for logs written to the log file
|
|
|
|
Possible values:
|
|
- json: Represents JSON formatting for logs. This format outputs log records as JSON objects, making it suitable for structured logging
|
|
- log-fmt: Represents logfmt (key=value) formatting for logs. This format is concise and human-readable, typically used in command-line applications
|
|
- terminal: Represents terminal-friendly formatting for logs
|
|
|
|
[default: terminal]
|
|
|
|
--log.file.filter <FILTER>
|
|
The filter to use for logs written to the log file
|
|
|
|
[default: debug]
|
|
|
|
--log.file.directory <PATH>
|
|
The path to put log files in
|
|
|
|
[default: <CACHE_DIR>/logs]
|
|
|
|
--log.file.name <NAME>
|
|
The prefix name of the log files
|
|
|
|
[default: reth.log]
|
|
|
|
--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.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
|
|
|
|
Possible values:
|
|
- always: Colors on
|
|
- auto: Auto-detect
|
|
- never: Colors off
|
|
|
|
[default: always]
|
|
|
|
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
|
|
|
|
Tracing:
|
|
--tracing-otlp[=<URL>]
|
|
Enable `Opentelemetry` tracing export to an OTLP endpoint.
|
|
|
|
If no value provided, defaults based on protocol: - HTTP: `http://localhost:4318/v1/traces` - gRPC: `http://localhost:4317`
|
|
|
|
Example: --tracing-otlp=http://collector:4318/v1/traces
|
|
|
|
[env: OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=]
|
|
|
|
--tracing-otlp-protocol <PROTOCOL>
|
|
OTLP transport protocol to use for exporting traces.
|
|
|
|
- `http`: expects endpoint path to end with `/v1/traces` - `grpc`: expects endpoint without a path
|
|
|
|
Defaults to HTTP if not specified.
|
|
|
|
Possible values:
|
|
- http: HTTP/Protobuf transport, port 4318, requires `/v1/traces` path
|
|
- grpc: gRPC transport, port 4317
|
|
|
|
[env: OTEL_EXPORTER_OTLP_PROTOCOL=]
|
|
[default: http]
|
|
|
|
--tracing-otlp.filter <FILTER>
|
|
Set a filter directive for the OTLP tracer. This controls the verbosity of spans and events sent to the OTLP endpoint. It follows the same syntax as the `RUST_LOG` environment variable.
|
|
|
|
Example: --tracing-otlp.filter=info,reth=debug,hyper_util=off
|
|
|
|
Defaults to TRACE if not specified.
|
|
|
|
[default: debug]
|
|
|
|
--tracing-otlp.sample-ratio <RATIO>
|
|
Trace sampling ratio to control the percentage of traces to export.
|
|
|
|
Valid range: 0.0 to 1.0 - 1.0, default: Sample all traces - 0.01: Sample 1% of traces - 0.0: Disable sampling
|
|
|
|
Example: --tracing-otlp.sample-ratio=0.0.
|
|
|
|
[env: OTEL_TRACES_SAMPLER_ARG=]
|
|
``` |