Configuration
Nethermind is highly configurable. There are 3 ways of configuring it, listed by priority:
- Command line options (aka arguments or flags)
- Environment variables
- Configuration file
Given the above priority list, an option defined in a more priority way overrides the same option defined elsewhere if any.
The full list of configuration options can be displayed by running:
nethermind -h
Below is the list of the basic command line options followed by an exhaustive list of configuration options by namespace.
The configuration options are case-sensitive and can be defined only once unless stated otherwise.
Basic command line options
-
-c, --config <value>
The path to the configuration file or the file name (also without extension) of any of the configuration files in the configuration files directory. Defaults to
mainnet
.Available configurations
Nethermind provides the following pre-built configurations named as the networks they are for. Their respective versions for archive nodes are suffixed
_archive
.base-mainnet
base-mainnet_archive
base-sepolia
base-sepolia_archive
chiado
chiado_archive
energyweb
energyweb_archive
gnosis
gnosis_archive
holesky
holesky_archive
linea-mainnet
linea-mainnet_archive
linea-sepolia
linea-sepolia_archive
mainnet
mainnet_archive
op-mainnet
op-mainnet_archive
op-sepolia
op-sepolia_archive
sepolia
sepolia_archive
taiko-hekla
taiko-helka_archive
taiko-mainnet
taiko-mainnet_archive
volta
volta_archive
Alternatively, the configuration file can also be set by the
NETHERMIND_CONFIG
environment variable. -
--configs-dir <path>
The path to the configuration files directory. Defaults to
configs
.
Deprecates--configsDirectory
-cd
.noteThis option is ignored if the
-c, --config
option is set to a path:# Ignored for
-c ./mainnet.json
-c path/to/mainnet.json
# Respected for
-c mainnet
-c mainnet.json -
--data-dir <path>
The path to the Nethermind data directory. Defaults to Nethermind's current directory.
Deprecates--datadir
-dd
.warningThe absolute paths set by
Init.BaseDbPath
,Init.LogDirectory
, orKeyStore.KeyStoreDirectory
options in a configuration file are not overridden by--data-dir
. -
--db-dir <path>
The path to the Nethermind database directory. Defaults to
db
.
Deprecates--baseDbPath
-d
. -
-?, -h, --help
Shows the full list of available command line options.
-
-l, --log <level>
Log level (severity). Allowed values:
off
trace
debug
info
warn
error
. Defaults toinfo
. -
--logger-config <path>
The path to the logging configuration file. Defaults to
NLog.config
.
Deprecates--loggerConfigSource
-lcs
. -
--plugins-dir <path>
The path to the Nethermind plugins directory. Defaults to
plugins
.
Deprecates--pluginsDirectory
-pd
. -
--version
Shows the Nethermind version information.
Options by namespaces
Aura
-
Aura.AllowAuRaPrivateChains
- CLI
- Environment variable
- Configuration file
--aura-allowauraprivatechains <value>
--Aura.AllowAuRaPrivateChains <value>NETHERMIND_AURACONFIG_ALLOWAURAPRIVATECHAINS=<value>
{
"Aura": {
"AllowAuRaPrivateChains": <value>
}
}Whether to allow private Aura-based chains only. Do not use with existing Aura-based chains. Allowed values:
true
false
. Defaults tofalse
. -
Aura.ForceSealing
- CLI
- Environment variable
- Configuration file
--aura-forcesealing <value>
--Aura.ForceSealing <value>NETHERMIND_AURACONFIG_FORCESEALING=<value>
{
"Aura": {
"ForceSealing": <value>
}
}Whether to seal empty blocks if mining. Allowed values:
true
false
. Defaults totrue
. -
Aura.Minimum2MlnGasPerBlockWhenUsingBlockGasLimitContract
- CLI
- Environment variable
- Configuration file
--aura-minimum2mlngasperblockwhenusingblockgaslimitcontract <value>
--Aura.Minimum2MlnGasPerBlockWhenUsingBlockGasLimitContract <value>NETHERMIND_AURACONFIG_MINIMUM2MLNGASPERBLOCKWHENUSINGBLOCKGASLIMITCONTRACT=<value>
{
"Aura": {
"Minimum2MlnGasPerBlockWhenUsingBlockGasLimitContract": <value>
}
}Whether to use 2M gas if the contract returns less than that when using
BlockGasLimitContractTransitions
. Allowed values:true
false
. Defaults tofalse
. -
Aura.TxPriorityConfigFilePath
- CLI
- Environment variable
- Configuration file
--aura-txpriorityconfigfilepath <value>
--Aura.TxPriorityConfigFilePath <value>NETHERMIND_AURACONFIG_TXPRIORITYCONFIGFILEPATH=<value>
{
"Aura": {
"TxPriorityConfigFilePath": <value>
}
}The path to the transaction priority rules file to use when selecting transactions from the transaction pool. Defaults to
null
. -
Aura.TxPriorityContractAddress
- CLI
- Environment variable
- Configuration file
--aura-txprioritycontractaddress <value>
--Aura.TxPriorityContractAddress <value>NETHERMIND_AURACONFIG_TXPRIORITYCONTRACTADDRESS=<value>
{
"Aura": {
"TxPriorityContractAddress": <value>
}
}The address of the transaction priority contract to use when selecting transactions from the transaction pool. Defaults to
null
.
Blocks
-
Blocks.BlockProductionTimeoutMs
- CLI
- Environment variable
- Configuration file
--blocks-blockproductiontimeoutms <value>
--Blocks.BlockProductionTimeoutMs <value>NETHERMIND_BLOCKSCONFIG_BLOCKPRODUCTIONTIMEOUTMS=<value>
{
"Blocks": {
"BlockProductionTimeoutMs": <value>
}
}The block production timeout, in milliseconds. Defaults to
4000
. -
Blocks.ExtraData
- CLI
- Environment variable
- Configuration file
--blocks-extradata <value>
--Blocks.ExtraData <value>NETHERMIND_BLOCKSCONFIG_EXTRADATA=<value>
{
"Blocks": {
"ExtraData": <value>
}
}The block header extra data up to 32 bytes in length. Defaults to
Nethermind
. -
Blocks.GenesisTimeoutMs
- CLI
- Environment variable
- Configuration file
--blocks-genesistimeoutms <value>
--Blocks.GenesisTimeoutMs <value>NETHERMIND_BLOCKSCONFIG_GENESISTIMEOUTMS=<value>
{
"Blocks": {
"GenesisTimeoutMs": <value>
}
}The genesis block load timeout, in milliseconds. Defaults to
40000
. -
Blocks.MinGasPrice
- CLI
- Environment variable
- Configuration file
--blocks-mingasprice <value>
--Blocks.MinGasPrice <value>NETHERMIND_BLOCKSCONFIG_MINGASPRICE=<value>
{
"Blocks": {
"MinGasPrice": <value>
}
}The minimum gas premium (or the gas price before the London hard fork) for transactions accepted by the block producer. Defaults to
1
. -
Blocks.PreWarmStateOnBlockProcessing
- CLI
- Environment variable
- Configuration file
--blocks-prewarmstateonblockprocessing <value>
--Blocks.PreWarmStateOnBlockProcessing <value>NETHERMIND_BLOCKSCONFIG_PREWARMSTATEONBLOCKPROCESSING=<value>
{
"Blocks": {
"PreWarmStateOnBlockProcessing": <value>
}
}Whether to pre-warm the state when processing blocks. This can lead to an up to 2x speed-up in the main loop block processing. Allowed values:
true
false
. Defaults toTrue
. -
Blocks.RandomizedBlocks
- CLI
- Environment variable
- Configuration file
--blocks-randomizedblocks <value>
--Blocks.RandomizedBlocks <value>NETHERMIND_BLOCKSCONFIG_RANDOMIZEDBLOCKS=<value>
{
"Blocks": {
"RandomizedBlocks": <value>
}
}Whether to change the difficulty of the block randomly within the constraints. Used in NethDev only. Allowed values:
true
false
. Defaults tofalse
. -
Blocks.SecondsPerSlot
- CLI
- Environment variable
- Configuration file
--blocks-secondsperslot <value>
--Blocks.SecondsPerSlot <value>NETHERMIND_BLOCKSCONFIG_SECONDSPERSLOT=<value>
{
"Blocks": {
"SecondsPerSlot": <value>
}
}The block time slot, in seconds. Defaults to
12
. -
Blocks.TargetBlockGasLimit
- CLI
- Environment variable
- Configuration file
--blocks-targetblockgaslimit <value>
--Blocks.TargetBlockGasLimit <value>NETHERMIND_BLOCKSCONFIG_TARGETBLOCKGASLIMIT=<value>
{
"Blocks": {
"TargetBlockGasLimit": <value>
}
}The block gas limit that the block producer should try to reach in the fastest possible way based on the protocol rules. If not specified, then the block producer should follow others. Defaults to
null
.
Bloom
-
Bloom.Index
- CLI
- Environment variable
- Configuration file
--bloom-index <value>
--Bloom.Index <value>NETHERMIND_BLOOMCONFIG_INDEX=<value>
{
"Bloom": {
"Index": <value>
}
}Whether to use the Bloom index. The Bloom index speeds up the RPC log searches. Allowed values:
true
false
. Defaults totrue
. -
Bloom.IndexLevelBucketSizes
- CLI
- Environment variable
- Configuration file
--bloom-indexlevelbucketsizes <value>
--Bloom.IndexLevelBucketSizes <value>NETHERMIND_BLOOMCONFIG_INDEXLEVELBUCKETSIZES=<value>
{
"Bloom": {
"IndexLevelBucketSizes": <value>
}
}An array of multipliers for index levels. Can be tweaked per chain to boost performance. Defaults to
[4, 8, 8]
. -
Bloom.Migration
- CLI
- Environment variable
- Configuration file
--bloom-migration <value>
--Bloom.Migration <value>NETHERMIND_BLOOMCONFIG_MIGRATION=<value>
{
"Bloom": {
"Migration": <value>
}
}Whether to migrate the previously downloaded blocks to the Bloom index. Allowed values:
true
false
. Defaults tofalse
. -
Bloom.MigrationStatistics
- CLI
- Environment variable
- Configuration file
--bloom-migrationstatistics <value>
--Bloom.MigrationStatistics <value>NETHERMIND_BLOOMCONFIG_MIGRATIONSTATISTICS=<value>
{
"Bloom": {
"MigrationStatistics": <value>
}
}Whether the migration statistics should be calculated and output. Allowed values:
true
false
. Defaults tofalse
.
CensorshipDetector
-
CensorshipDetector.AddressesForCensorshipDetection
- CLI
- Environment variable
- Configuration file
--censorshipdetector-addressesforcensorshipdetection <value>
--CensorshipDetector.AddressesForCensorshipDetection <value>NETHERMIND_CENSORSHIPDETECTORCONFIG_ADDRESSESFORCENSORSHIPDETECTION=<value>
{
"CensorshipDetector": {
"AddressesForCensorshipDetection": <value>
}
}The addresses to detect censorship for. Defaults to
null
. -
CensorshipDetector.BlockCensorshipThreshold
- CLI
- Environment variable
- Configuration file
--censorshipdetector-blockcensorshipthreshold <value>
--CensorshipDetector.BlockCensorshipThreshold <value>NETHERMIND_CENSORSHIPDETECTORCONFIG_BLOCKCENSORSHIPTHRESHOLD=<value>
{
"CensorshipDetector": {
"BlockCensorshipThreshold": <value>
}
}The number of the consecutive blocks with detected potential censorship to report. Defaults to
2
. -
CensorshipDetector.Enabled
- CLI
- Environment variable
- Configuration file
--censorshipdetector-enabled <value>
--CensorshipDetector.Enabled <value>NETHERMIND_CENSORSHIPDETECTORCONFIG_ENABLED=<value>
{
"CensorshipDetector": {
"Enabled": <value>
}
}Whether to enable censorship detection. Allowed values:
true
false
. Defaults tofalse
.
Clique
EthStats
-
EthStats.Contact
- CLI
- Environment variable
- Configuration file
--ethstats-contact <value>
--EthStats.Contact <value>NETHERMIND_ETHSTATSCONFIG_CONTACT=<value>
{
"EthStats": {
"Contact": <value>
}
}The node owner contact details displayed on Ethstats. Defaults to
hello@nethermind.io
. -
EthStats.Enabled
- CLI
- Environment variable
- Configuration file
--ethstats-enabled <value>
--EthStats.Enabled <value>NETHERMIND_ETHSTATSCONFIG_ENABLED=<value>
{
"EthStats": {
"Enabled": <value>
}
}Whether to use Ethstats publishing. Allowed values:
true
false
. Defaults tofalse
. -
EthStats.Name
- CLI
- Environment variable
- Configuration file
--ethstats-name <value>
--EthStats.Name <value>NETHERMIND_ETHSTATSCONFIG_NAME=<value>
{
"EthStats": {
"Name": <value>
}
}The node name displayed on Ethstats. Defaults to
Nethermind
. -
EthStats.Secret
- CLI
- Environment variable
- Configuration file
--ethstats-secret <value>
--EthStats.Secret <value>NETHERMIND_ETHSTATSCONFIG_SECRET=<value>
{
"EthStats": {
"Secret": <value>
}
}The Ethstats secret. Defaults to
secret
. -
EthStats.SendInterval
- CLI
- Environment variable
- Configuration file
--ethstats-sendinterval <value>
--EthStats.SendInterval <value>NETHERMIND_ETHSTATSCONFIG_SENDINTERVAL=<value>
{
"EthStats": {
"SendInterval": <value>
}
}The stats update interval, in seconds. Defaults to
15
. -
EthStats.Server
- CLI
- Environment variable
- Configuration file
--ethstats-server <value>
--EthStats.Server <value>NETHERMIND_ETHSTATSCONFIG_SERVER=<value>
{
"EthStats": {
"Server": <value>
}
}The Ethstats server URL. Defaults to
ws://localhost:3000/api
.
HealthChecks
-
HealthChecks.Enabled
- CLI
- Environment variable
- Configuration file
--healthchecks-enabled <value>
--HealthChecks.Enabled <value>NETHERMIND_HEALTHCHECKSCONFIG_ENABLED=<value>
{
"HealthChecks": {
"Enabled": <value>
}
}Whether to enable the health check. Allowed values:
true
false
. Defaults tofalse
. -
HealthChecks.LowStorageCheckAwaitOnStartup
- CLI
- Environment variable
- Configuration file
--healthchecks-lowstoragecheckawaitonstartup <value>
--HealthChecks.LowStorageCheckAwaitOnStartup <value>NETHERMIND_HEALTHCHECKSCONFIG_LOWSTORAGECHECKAWAITONSTARTUP=<value>
{
"HealthChecks": {
"LowStorageCheckAwaitOnStartup": <value>
}
}Whether to check for low disk space on startup and suspend until enough space is available. Allowed values:
true
false
. Defaults tofalse
. -
HealthChecks.LowStorageSpaceShutdownThreshold
- CLI
- Environment variable
- Configuration file
--healthchecks-lowstoragespaceshutdownthreshold <value>
--HealthChecks.LowStorageSpaceShutdownThreshold <value>NETHERMIND_HEALTHCHECKSCONFIG_LOWSTORAGESPACESHUTDOWNTHRESHOLD=<value>
{
"HealthChecks": {
"LowStorageSpaceShutdownThreshold": <value>
}
}The percentage of available disk space below which Nethermind shuts down.
0
to disable. Defaults to1
. -
HealthChecks.LowStorageSpaceWarningThreshold
- CLI
- Environment variable
- Configuration file
--healthchecks-lowstoragespacewarningthreshold <value>
--HealthChecks.LowStorageSpaceWarningThreshold <value>NETHERMIND_HEALTHCHECKSCONFIG_LOWSTORAGESPACEWARNINGTHRESHOLD=<value>
{
"HealthChecks": {
"LowStorageSpaceWarningThreshold": <value>
}
}The percentage of available disk space below which a warning is displayed.
0
to disable. Defaults to5
. -
HealthChecks.MaxIntervalClRequestTime
- CLI
- Environment variable
- Configuration file
--healthchecks-maxintervalclrequesttime <value>
--HealthChecks.MaxIntervalClRequestTime <value>NETHERMIND_HEALTHCHECKSCONFIG_MAXINTERVALCLREQUESTTIME=<value>
{
"HealthChecks": {
"MaxIntervalClRequestTime": <value>
}
}The max request interval, in seconds, in which the consensus client is assumed healthy. Defaults to
300
. -
HealthChecks.MaxIntervalWithoutProcessedBlock
- CLI
- Environment variable
- Configuration file
--healthchecks-maxintervalwithoutprocessedblock <value>
--HealthChecks.MaxIntervalWithoutProcessedBlock <value>NETHERMIND_HEALTHCHECKSCONFIG_MAXINTERVALWITHOUTPROCESSEDBLOCK=<value>
{
"HealthChecks": {
"MaxIntervalWithoutProcessedBlock": <value>
}
}The max interval, in seconds, in which the block processing is assumed healthy. Defaults to
null
. -
HealthChecks.MaxIntervalWithoutProducedBlock
- CLI
- Environment variable
- Configuration file
--healthchecks-maxintervalwithoutproducedblock <value>
--HealthChecks.MaxIntervalWithoutProducedBlock <value>NETHERMIND_HEALTHCHECKSCONFIG_MAXINTERVALWITHOUTPRODUCEDBLOCK=<value>
{
"HealthChecks": {
"MaxIntervalWithoutProducedBlock": <value>
}
}The max interval, in seconds, in which the block production is assumed healthy. Defaults to
null
. -
HealthChecks.PollingInterval
- CLI
- Environment variable
- Configuration file
--healthchecks-pollinginterval <value>
--HealthChecks.PollingInterval <value>NETHERMIND_HEALTHCHECKSCONFIG_POLLINGINTERVAL=<value>
{
"HealthChecks": {
"PollingInterval": <value>
}
}The health check updates polling interval, in seconds. Defaults to
5
. -
HealthChecks.Slug
- CLI
- Environment variable
- Configuration file
--healthchecks-slug <value>
--HealthChecks.Slug <value>NETHERMIND_HEALTHCHECKSCONFIG_SLUG=<value>
{
"HealthChecks": {
"Slug": <value>
}
}The URL slug the health checks service is exposed at. Defaults to
/health
. -
HealthChecks.UIEnabled
- CLI
- Environment variable
- Configuration file
--healthchecks-uienabled <value>
--HealthChecks.UIEnabled <value>NETHERMIND_HEALTHCHECKSCONFIG_UIENABLED=<value>
{
"HealthChecks": {
"UIEnabled": <value>
}
}Whether to enable the health checks UI. Allowed values:
true
false
. Defaults tofalse
. -
HealthChecks.WebhooksEnabled
- CLI
- Environment variable
- Configuration file
--healthchecks-webhooksenabled <value>
--HealthChecks.WebhooksEnabled <value>NETHERMIND_HEALTHCHECKSCONFIG_WEBHOOKSENABLED=<value>
{
"HealthChecks": {
"WebhooksEnabled": <value>
}
}Whether to enable web hooks. Allowed values:
true
false
. Defaults tofalse
. -
HealthChecks.WebhooksPayload
- CLI
- Environment variable
- Configuration file
--healthchecks-webhookspayload <value>
--HealthChecks.WebhooksPayload <value>NETHERMIND_HEALTHCHECKSCONFIG_WEBHOOKSPAYLOAD=<value>
{
"HealthChecks": {
"WebhooksPayload": <value>
}
}An escaped JSON paylod to be sent to the web hook on failure. Defaults to:
{
"attachments": [
{
"color": "#FFCC00",
"pretext": "Health Check Status :warning:",
"fields": [
{
"title": "Details",
"value": "More details available at /healthchecks-ui",
"short": false
},
{
"title": "Description",
"value": "[[DESCRIPTIONS]]",
"short": false
}
]
}
]
} -
HealthChecks.WebhooksRestorePayload
- CLI
- Environment variable
- Configuration file
--healthchecks-webhooksrestorepayload <value>
--HealthChecks.WebhooksRestorePayload <value>NETHERMIND_HEALTHCHECKSCONFIG_WEBHOOKSRESTOREPAYLOAD=<value>
{
"HealthChecks": {
"WebhooksRestorePayload": <value>
}
}An escaped JSON paylod to be sent to the web hook on recovery. Defaults to:
{
"attachments": [
{
"color": "#36a64f",
"pretext": "Health Check Status :+1:",
"fields": [
{
"title": "Details",
"value": "More details available at /healthchecks-ui",
"short": false
},
{
"title": "description",
"value": "The HealthCheck `[[LIVENESS]]` is recovered. Everything is up and running.",
"short": false
}
]
}
]
} -
HealthChecks.WebhooksUri
- CLI
- Environment variable
- Configuration file
--healthchecks-webhooksuri <value>
--HealthChecks.WebhooksUri <value>NETHERMIND_HEALTHCHECKSCONFIG_WEBHOOKSURI=<value>
{
"HealthChecks": {
"WebhooksUri": <value>
}
}The web hook URL. Defaults to
null
.
Hive
-
Hive.BlocksDir
- CLI
- Environment variable
- Configuration file
--hive-blocksdir <value>
--Hive.BlocksDir <value>NETHERMIND_HIVECONFIG_BLOCKSDIR=<value>
{
"Hive": {
"BlocksDir": <value>
}
}The path to the directory with additional blocks. Defaults to
/blocks
. -
Hive.ChainFile
- CLI
- Environment variable
- Configuration file
--hive-chainfile <value>
--Hive.ChainFile <value>NETHERMIND_HIVECONFIG_CHAINFILE=<value>
{
"Hive": {
"ChainFile": <value>
}
}The path to the chain definition should be specified as an RLP-encoded block sequence. Defaults to
/chain.rlp
. -
Hive.Enabled
- CLI
- Environment variable
- Configuration file
--hive-enabled <value>
--Hive.Enabled <value>NETHERMIND_HIVECONFIG_ENABLED=<value>
{
"Hive": {
"Enabled": <value>
}
}Whether to enable Hive for debugging. Allowed values:
true
false
. Defaults tofalse
. -
Hive.GenesisFilePath
- CLI
- Environment variable
- Configuration file
--hive-genesisfilepath <value>
--Hive.GenesisFilePath <value>NETHERMIND_HIVECONFIG_GENESISFILEPATH=<value>
{
"Hive": {
"GenesisFilePath": <value>
}
}The path to the genesis block file. Defaults to
/genesis.json
. -
Hive.KeysDir
- CLI
- Environment variable
- Configuration file
--hive-keysdir <value>
--Hive.KeysDir <value>NETHERMIND_HIVECONFIG_KEYSDIR=<value>
{
"Hive": {
"KeysDir": <value>
}
}The path to the keystore directory. Defaults to
/keys
.
Init
-
Init.AutoDump
- CLI
- Environment variable
- Configuration file
--init-autodump <value>
--Init.AutoDump <value>NETHERMIND_INITCONFIG_AUTODUMP=<value>
{
"Init": {
"AutoDump": <value>
}
}Auto-dump on bad blocks for diagnostics.
Allowed values:
None
: None.Receipts
: Dumps block receipts traces.Parity
: Dumps Parity-like traces.Geth
: Dumps Geth-like traces.Rlp
: Dumps RLP data to a.rlp
file with the block hash in the file name.RlpLog
: Dumps RLP data to the log output.Default
: Combines theReceipts
Rlp
options.All
: Combines theGeth
Parity
Receipts
Rlp
options.
Defaults to
Default
. -
Init.BadBlocksStored
- CLI
- Environment variable
- Configuration file
--init-badblocksstored <value>
--Init.BadBlocksStored <value>NETHERMIND_INITCONFIG_BADBLOCKSSTORED=<value>
{
"Init": {
"BadBlocksStored": <value>
}
}The maximum number of bad blocks observed on the network that will be stored on disk. Defaults to
100
. -
Init.BaseDbPath
- CLI
- Environment variable
- Configuration file
--init-basedbpath <value>
--Init.BaseDbPath <value>NETHERMIND_INITCONFIG_BASEDBPATH=<value>
{
"Init": {
"BaseDbPath": <value>
}
}The base path for all Nethermind databases. Defaults to
db
. -
Init.ChainSpecPath
- CLI
- Environment variable
- Configuration file
--init-chainspecpath <value>
--Init.ChainSpecPath <value>NETHERMIND_INITCONFIG_CHAINSPECPATH=<value>
{
"Init": {
"ChainSpecPath": <value>
}
}The path to the chain spec file. Defaults to
chainspec/foundation.json
. -
Init.DiagnosticMode
- CLI
- Environment variable
- Configuration file
--init-diagnosticmode <value>
--Init.DiagnosticMode <value>NETHERMIND_INITCONFIG_DIAGNOSTICMODE=<value>
{
"Init": {
"DiagnosticMode": <value>
}
}The diagnostic mode.
Allowed values:
None
: None.MemDb
: Uses an in-memory DB.RpcDb
: Uses a remote DB.ReadOnlyDb
: Uses a read-only DB.VerifyRewards
: Scans rewards for blocks and genesis.VerifySupply
: Scans and sums supply on all accounts.VerifyTrie
: Verifies if full state trie is stored.
Defaults to
None
. -
Init.DiscoveryEnabled
- CLI
- Environment variable
- Configuration file
--init-discoveryenabled <value>
--Init.DiscoveryEnabled <value>NETHERMIND_INITCONFIG_DISCOVERYENABLED=<value>
{
"Init": {
"DiscoveryEnabled": <value>
}
}Whether to enable the node discovery. If disabled, Nethermind doesn't look for other nodes beyond the bootnodes specified. Allowed values:
true
false
. Defaults totrue
. -
Init.EnableUnsecuredDevWallet
- CLI
- Environment variable
- Configuration file
--init-enableunsecureddevwallet <value>
--Init.EnableUnsecuredDevWallet <value>NETHERMIND_INITCONFIG_ENABLEUNSECUREDDEVWALLET=<value>
{
"Init": {
"EnableUnsecuredDevWallet": <value>
}
}Whether to enable the in-app wallet/keystore. Allowed values:
true
false
. Defaults tofalse
. -
Init.GenesisHash
- CLI
- Environment variable
- Configuration file
--init-genesishash <value>
--Init.GenesisHash <value>NETHERMIND_INITCONFIG_GENESISHASH=<value>
{
"Init": {
"GenesisHash": <value>
}
}The hash of the genesis block. If not specified, the genesis block validity is not checked which is useful in the case of ad hoc test/private networks. Defaults to
null
. -
Init.HiveChainSpecPath
- CLI
- Environment variable
- Configuration file
--init-hivechainspecpath <value>
--Init.HiveChainSpecPath <value>NETHERMIND_INITCONFIG_HIVECHAINSPECPATH=<value>
{
"Init": {
"HiveChainSpecPath": <value>
}
}The path to the chain spec file for Hive tests. Defaults to
chainspec/test.json
. -
Init.IsMining
- CLI
- Environment variable
- Configuration file
--init-ismining <value>
--Init.IsMining <value>NETHERMIND_INITCONFIG_ISMINING=<value>
{
"Init": {
"IsMining": <value>
}
}Whether to seal/mine new blocks. Allowed values:
true
false
. Defaults tofalse
. -
Init.KeepDevWalletInMemory
- CLI
- Environment variable
- Configuration file
--init-keepdevwalletinmemory <value>
--Init.KeepDevWalletInMemory <value>NETHERMIND_INITCONFIG_KEEPDEVWALLETINMEMORY=<value>
{
"Init": {
"KeepDevWalletInMemory": <value>
}
}Whether to create session-only accounts and delete them on shutdown. Allowed values:
true
false
. Defaults tofalse
. -
Init.KzgSetupPath
- CLI
- Environment variable
- Configuration file
--init-kzgsetuppath <value>
--Init.KzgSetupPath <value>NETHERMIND_INITCONFIG_KZGSETUPPATH=<value>
{
"Init": {
"KzgSetupPath": <value>
}
}The path to KZG trusted setup file. Defaults to
null
. -
Init.LogDirectory
- CLI
- Environment variable
- Configuration file
--init-logdirectory <value>
--Init.LogDirectory <value>NETHERMIND_INITCONFIG_LOGDIRECTORY=<value>
{
"Init": {
"LogDirectory": <value>
}
}The path to the Nethermind logs directory. Defaults to
logs
. -
Init.LogFileName
- CLI
- Environment variable
- Configuration file
--init-logfilename <value>
--Init.LogFileName <value>NETHERMIND_INITCONFIG_LOGFILENAME=<value>
{
"Init": {
"LogFileName": <value>
}
}The name of the log file. Defaults to
log.txt
. -
Init.LogRules
- CLI
- Environment variable
- Configuration file
--init-logrules <value>
--Init.LogRules <value>NETHERMIND_INITCONFIG_LOGRULES=<value>
{
"Init": {
"LogRules": <value>
}
}The logs format as
LogPath:LogLevel;*
Defaults tonull
. -
Init.MemoryHint
- CLI
- Environment variable
- Configuration file
--init-memoryhint <value>
--Init.MemoryHint <value>NETHERMIND_INITCONFIG_MEMORYHINT=<value>
{
"Init": {
"MemoryHint": <value>
}
}The hint on the max memory limit, in bytes, to configure the database and networking memory allocations. Defaults to
null
. -
Init.PeerManagerEnabled
- CLI
- Environment variable
- Configuration file
--init-peermanagerenabled <value>
--Init.PeerManagerEnabled <value>NETHERMIND_INITCONFIG_PEERMANAGERENABLED=<value>
{
"Init": {
"PeerManagerEnabled": <value>
}
}Whether to connect to newly discovered peers. Allowed values:
true
false
. Defaults totrue
. -
Init.ProcessingEnabled
- CLI
- Environment variable
- Configuration file
--init-processingenabled <value>
--Init.ProcessingEnabled <value>NETHERMIND_INITCONFIG_PROCESSINGENABLED=<value>
{
"Init": {
"ProcessingEnabled": <value>
}
}Whether to download/process new blocks. Allowed values:
true
false
. Defaults totrue
. -
Init.RpcDbUrl
- CLI
- Environment variable
- Configuration file
--init-rpcdburl <value>
--Init.RpcDbUrl <value>NETHERMIND_INITCONFIG_RPCDBURL=<value>
{
"Init": {
"RpcDbUrl": <value>
}
}The URL of the remote node used as a database source when
DiagnosticMode
is set toRpcDb
. -
Init.StaticNodesPath
- CLI
- Environment variable
- Configuration file
--init-staticnodespath <value>
--Init.StaticNodesPath <value>NETHERMIND_INITCONFIG_STATICNODESPATH=<value>
{
"Init": {
"StaticNodesPath": <value>
}
}The path to the static nodes file. Defaults to
Data/static-nodes.json
. -
Init.WebSocketsEnabled
- CLI
- Environment variable
- Configuration file
--init-websocketsenabled <value>
--Init.WebSocketsEnabled <value>NETHERMIND_INITCONFIG_WEBSOCKETSENABLED=<value>
{
"Init": {
"WebSocketsEnabled": <value>
}
}Whether to enable WebSocket service for the default JSON-RPC port on startup. Allowed values:
true
false
. Defaults totrue
.
JsonRpc
-
JsonRpc.AdditionalRpcUrls
- CLI
- Environment variable
- Configuration file
--jsonrpc-additionalrpcurls <value>
--JsonRpc.AdditionalRpcUrls <value>NETHERMIND_JSONRPCCONFIG_ADDITIONALRPCURLS=<value>
{
"JsonRpc": {
"AdditionalRpcUrls": <value>
}
}An array of additional JSON-RPC URLs to listen at with protocol and JSON-RPC namespace list. For instance,
[http://localhost:8546|http;ws|eth;web3]
. Defaults to[]
. -
JsonRpc.BufferResponses
- CLI
- Environment variable
- Configuration file
--jsonrpc-bufferresponses <value>
--JsonRpc.BufferResponses <value>NETHERMIND_JSONRPCCONFIG_BUFFERRESPONSES=<value>
{
"JsonRpc": {
"BufferResponses": <value>
}
}Whether to buffer responses before sending them. This allows using of
Content-Length
instead ofTransfer-Encoding: chunked
. Note that it may degrade performance on large responses. The max buffered response length is 2GB. Chunked responses can be larger. Allowed values:true
false
. Defaults tofalse
. -
JsonRpc.CallsFilterFilePath
- CLI
- Environment variable
- Configuration file
--jsonrpc-callsfilterfilepath <value>
--JsonRpc.CallsFilterFilePath <value>NETHERMIND_JSONRPCCONFIG_CALLSFILTERFILEPATH=<value>
{
"JsonRpc": {
"CallsFilterFilePath": <value>
}
}The path to a file with the list of new-line-separated JSON-RPC calls. If specified, only the calls from that file are allowed. Defaults to
Data/jsonrpc.filter
. -
JsonRpc.CorsOrigins
- CLI
- Environment variable
- Configuration file
--jsonrpc-corsorigins <value>
--JsonRpc.CorsOrigins <value>NETHERMIND_JSONRPCCONFIG_CORSORIGINS=<value>
{
"JsonRpc": {
"CorsOrigins": <value>
}
}The JSON-RPC server CORS origins. Defaults to
*
. -
JsonRpc.Enabled
- CLI
- Environment variable
- Configuration file
--jsonrpc-enabled <value>
--JsonRpc.Enabled <value>NETHERMIND_JSONRPCCONFIG_ENABLED=<value>
{
"JsonRpc": {
"Enabled": <value>
}
}Whether to enable the JSON-RPC service. Allowed values:
true
false
. Defaults tofalse
. -
JsonRpc.EnabledModules
- CLI
- Environment variable
- Configuration file
--jsonrpc-enabledmodules <value>
--JsonRpc.EnabledModules <value>NETHERMIND_JSONRPCCONFIG_ENABLEDMODULES=<value>
{
"JsonRpc": {
"EnabledModules": <value>
}
}An array of JSON-RPC namespaces to enable. For instance,
[debug,eth]
.Built-in namespaces:
admin
client
debug
engine
eth
evm
health
net
parity
personal
proof
rpc
subscribe
trace
txpool
web3
Defaults to
[Eth,Subscribe,Trace,TxPool,Web3,Personal,Proof,Net,Parity,Health,Rpc]
. -
JsonRpc.EngineEnabledModules
- CLI
- Environment variable
- Configuration file
--jsonrpc-engineenabledmodules <value>
--JsonRpc.EngineEnabledModules <value>NETHERMIND_JSONRPCCONFIG_ENGINEENABLEDMODULES=<value>
{
"JsonRpc": {
"EngineEnabledModules": <value>
}
}An array of additional JSON-RPC URLs to listen at with protocol and JSON-RPC namespace list for Engine API. Defaults to
[Net,Eth,Subscribe,Web3]
. -
JsonRpc.EngineHost
- CLI
- Environment variable
- Configuration file
--jsonrpc-enginehost <value>
--JsonRpc.EngineHost <value>NETHERMIND_JSONRPCCONFIG_ENGINEHOST=<value>
{
"JsonRpc": {
"EngineHost": <value>
}
}The Engine API host. Defaults to
127.0.0.1
. -
JsonRpc.EnginePort
- CLI
- Environment variable
- Configuration file
--jsonrpc-engineport <value>
--JsonRpc.EnginePort <value>NETHERMIND_JSONRPCCONFIG_ENGINEPORT=<value>
{
"JsonRpc": {
"EnginePort": <value>
}
}The Engine API port. Defaults to
null
. -
JsonRpc.EstimateErrorMargin
- CLI
- Environment variable
- Configuration file
--jsonrpc-estimateerrormargin <value>
--JsonRpc.EstimateErrorMargin <value>NETHERMIND_JSONRPCCONFIG_ESTIMATEERRORMARGIN=<value>
{
"JsonRpc": {
"EstimateErrorMargin": <value>
}
}The error margin used in the
eth_estimateGas
JSON-RPC method, in basis points. Defaults to150
. -
JsonRpc.EthModuleConcurrentInstances
- CLI
- Environment variable
- Configuration file
--jsonrpc-ethmoduleconcurrentinstances <value>
--JsonRpc.EthModuleConcurrentInstances <value>NETHERMIND_JSONRPCCONFIG_ETHMODULECONCURRENTINSTANCES=<value>
{
"JsonRpc": {
"EthModuleConcurrentInstances": <value>
}
}The number of concurrent instances for non-sharable calls:
eth_call
eth_estimateGas
eth_getLogs
eth_newBlockFilter
eth_newFilter
eth_newPendingTransactionFilter
eth_uninstallFilter
This limits the load on the CPU and I/O to reasonable levels. If the limit is exceeded, HTTP 503 is returned along with the JSON-RPC error. Defaults to the number of logical processors.
-
JsonRpc.GasCap
- CLI
- Environment variable
- Configuration file
--jsonrpc-gascap <value>
--JsonRpc.GasCap <value>NETHERMIND_JSONRPCCONFIG_GASCAP=<value>
{
"JsonRpc": {
"GasCap": <value>
}
}The gas limit for
eth_call
andeth_estimateGas
. Defaults to100000000
. -
JsonRpc.Host
- CLI
- Environment variable
- Configuration file
--jsonrpc-host <value>
--JsonRpc.Host <value>NETHERMIND_JSONRPCCONFIG_HOST=<value>
{
"JsonRpc": {
"Host": <value>
}
}The JSON-RPC service host. Defaults to
127.0.0.1
. -
JsonRpc.IpcUnixDomainSocketPath
- CLI
- Environment variable
- Configuration file
--jsonrpc-ipcunixdomainsocketpath <value>
--JsonRpc.IpcUnixDomainSocketPath <value>NETHERMIND_JSONRPCCONFIG_IPCUNIXDOMAINSOCKETPATH=<value>
{
"JsonRpc": {
"IpcUnixDomainSocketPath": <value>
}
}The path to connect a UNIX domain socket over.
-
JsonRpc.JwtSecretFile
- CLI
- Environment variable
- Configuration file
--jsonrpc-jwtsecretfile <value>
--JsonRpc.JwtSecretFile <value>NETHERMIND_JSONRPCCONFIG_JWTSECRETFILE=<value>
{
"JsonRpc": {
"JwtSecretFile": <value>
}
}The path to the JWT secret file required for the Engine API authentication. Defaults to
keystore/jwt-secret
. -
JsonRpc.MaxBatchResponseBodySize
- CLI
- Environment variable
- Configuration file
--jsonrpc-maxbatchresponsebodysize <value>
--JsonRpc.MaxBatchResponseBodySize <value>NETHERMIND_JSONRPCCONFIG_MAXBATCHRESPONSEBODYSIZE=<value>
{
"JsonRpc": {
"MaxBatchResponseBodySize": <value>
}
}The max batch size limit for batched JSON-RPC calls. Defaults to
33554432
. -
JsonRpc.MaxBatchSize
- CLI
- Environment variable
- Configuration file
--jsonrpc-maxbatchsize <value>
--JsonRpc.MaxBatchSize <value>NETHERMIND_JSONRPCCONFIG_MAXBATCHSIZE=<value>
{
"JsonRpc": {
"MaxBatchSize": <value>
}
}The max number of JSON-RPC requests in a batch. Defaults to
1024
. -
JsonRpc.MaxLoggedRequestParametersCharacters
- CLI
- Environment variable
- Configuration file
--jsonrpc-maxloggedrequestparameterscharacters <value>
--JsonRpc.MaxLoggedRequestParametersCharacters <value>NETHERMIND_JSONRPCCONFIG_MAXLOGGEDREQUESTPARAMETERSCHARACTERS=<value>
{
"JsonRpc": {
"MaxLoggedRequestParametersCharacters": <value>
}
}The max number of characters of a JSON-RPC request parameter printing to the log. Defaults to
null
. -
JsonRpc.MaxLogsPerResponse
- CLI
- Environment variable
- Configuration file
--jsonrpc-maxlogsperresponse <value>
--JsonRpc.MaxLogsPerResponse <value>NETHERMIND_JSONRPCCONFIG_MAXLOGSPERRESPONSE=<value>
{
"JsonRpc": {
"MaxLogsPerResponse": <value>
}
}The max number of logs per response for the
eth_getLogs
JSON-RPC method.0
to lift the limit. Defaults to20000
. -
JsonRpc.MaxRequestBodySize
- CLI
- Environment variable
- Configuration file
--jsonrpc-maxrequestbodysize <value>
--JsonRpc.MaxRequestBodySize <value>NETHERMIND_JSONRPCCONFIG_MAXREQUESTBODYSIZE=<value>
{
"JsonRpc": {
"MaxRequestBodySize": <value>
}
}The max length of HTTP request body, in bytes. Defaults to
30000000
. -
JsonRpc.MaxSimulateBlocksCap
- CLI
- Environment variable
- Configuration file
--jsonrpc-maxsimulateblockscap <value>
--JsonRpc.MaxSimulateBlocksCap <value>NETHERMIND_JSONRPCCONFIG_MAXSIMULATEBLOCKSCAP=<value>
{
"JsonRpc": {
"MaxSimulateBlocksCap": <value>
}
}The max block count limit for the
eth_simulate
JSON-RPC method. Defaults to256
. -
JsonRpc.MethodsLoggingFiltering
- CLI
- Environment variable
- Configuration file
--jsonrpc-methodsloggingfiltering <value>
--JsonRpc.MethodsLoggingFiltering <value>NETHERMIND_JSONRPCCONFIG_METHODSLOGGINGFILTERING=<value>
{
"JsonRpc": {
"MethodsLoggingFiltering": <value>
}
}An array of the method names not to log. Defaults to
[engine_newPayloadV1,engine_newPayloadV2,engine_newPayloadV3,engine_forkchoiceUpdatedV1,engine_forkchoiceUpdatedV2]
. -
JsonRpc.Port
- CLI
- Environment variable
- Configuration file
--jsonrpc-port <value>
--JsonRpc.Port <value>NETHERMIND_JSONRPCCONFIG_PORT=<value>
{
"JsonRpc": {
"Port": <value>
}
}The JSON-RPC service HTTP port. Defaults to
8545
. -
JsonRpc.ReportIntervalSeconds
- CLI
- Environment variable
- Configuration file
--jsonrpc-reportintervalseconds <value>
--JsonRpc.ReportIntervalSeconds <value>NETHERMIND_JSONRPCCONFIG_REPORTINTERVALSECONDS=<value>
{
"JsonRpc": {
"ReportIntervalSeconds": <value>
}
}The interval, in seconds, between the JSON-RPC stats report log. Defaults to
300
. -
JsonRpc.RequestQueueLimit
- CLI
- Environment variable
- Configuration file
--jsonrpc-requestqueuelimit <value>
--JsonRpc.RequestQueueLimit <value>NETHERMIND_JSONRPCCONFIG_REQUESTQUEUELIMIT=<value>
{
"JsonRpc": {
"RequestQueueLimit": <value>
}
}The max number of concurrent requests in the queue for:
eth_call
eth_estimateGas
eth_getLogs
eth_newFilter
eth_newBlockFilter
eth_newPendingTransactionFilter
eth_uninstallFilter
0
to lift the limit. Defaults to500
. -
JsonRpc.RpcRecorderBaseFilePath
- CLI
- Environment variable
- Configuration file
--jsonrpc-rpcrecorderbasefilepath <value>
--JsonRpc.RpcRecorderBaseFilePath <value>NETHERMIND_JSONRPCCONFIG_RPCRECORDERBASEFILEPATH=<value>
{
"JsonRpc": {
"RpcRecorderBaseFilePath": <value>
}
}The path to the base file for diagnostic recording. Defaults to
logs/rpc.{counter}.txt
. -
JsonRpc.RpcRecorderState
- CLI
- Environment variable
- Configuration file
--jsonrpc-rpcrecorderstate <value>
--JsonRpc.RpcRecorderState <value>NETHERMIND_JSONRPCCONFIG_RPCRECORDERSTATE=<value>
{
"JsonRpc": {
"RpcRecorderState": <value>
}
}The diagnostic recording mode.
Allowed values:
None
: None.Request
: Records requests.Response
: Records responses.All
: Records both requests and responses.
Defaults to
None
. -
JsonRpc.Timeout
- CLI
- Environment variable
- Configuration file
--jsonrpc-timeout <value>
--JsonRpc.Timeout <value>NETHERMIND_JSONRPCCONFIG_TIMEOUT=<value>
{
"JsonRpc": {
"Timeout": <value>
}
}The request timeout, in milliseconds. Defaults to
20000
. -
JsonRpc.WebSocketsPort
- CLI
- Environment variable
- Configuration file
--jsonrpc-websocketsport <value>
--JsonRpc.WebSocketsPort <value>NETHERMIND_JSONRPCCONFIG_WEBSOCKETSPORT=<value>
{
"JsonRpc": {
"WebSocketsPort": <value>
}
}The JSON-RPC service WebSockets port. Defaults to
8545
.
KeyStore
-
KeyStore.BlockAuthorAccount
- CLI
- Environment variable
- Configuration file
--keystore-blockauthoraccount <value>
--KeyStore.BlockAuthorAccount <value>NETHERMIND_KEYSTORECONFIG_BLOCKAUTHORACCOUNT=<value>
{
"KeyStore": {
"BlockAuthorAccount": <value>
}
}An account to use as the block author (coinbase).
-
KeyStore.Cipher
- CLI
- Environment variable
- Configuration file
--keystore-cipher <value>
--KeyStore.Cipher <value>NETHERMIND_KEYSTORECONFIG_CIPHER=<value>
{
"KeyStore": {
"Cipher": <value>
}
}See Web3 secret storage definition. Defaults to
aes-128-ctr
. -
KeyStore.EnodeAccount
- CLI
- Environment variable
- Configuration file
--keystore-enodeaccount <value>
--KeyStore.EnodeAccount <value>NETHERMIND_KEYSTORECONFIG_ENODEACCOUNT=<value>
{
"KeyStore": {
"EnodeAccount": <value>
}
}An account to use for networking (enode). If neither this nor the
EnodeKeyFile
option is specified, the key is autogenerated innode.key.plain
file. -
KeyStore.EnodeKeyFile
- CLI
- Environment variable
- Configuration file
--keystore-enodekeyfile <value>
--KeyStore.EnodeKeyFile <value>NETHERMIND_KEYSTORECONFIG_ENODEKEYFILE=<value>
{
"KeyStore": {
"EnodeKeyFile": <value>
}
}The path to the key file to use by for networking (enode). If neither this nor the
EnodeAccount
is specified, the key is autogenerated innode.key.plain
file. -
KeyStore.IVSize
- CLI
- Environment variable
- Configuration file
--keystore-ivsize <value>
--KeyStore.IVSize <value>NETHERMIND_KEYSTORECONFIG_IVSIZE=<value>
{
"KeyStore": {
"IVSize": <value>
}
}See Web3 secret storage definition. Defaults to
16
. -
KeyStore.Kdf
- CLI
- Environment variable
- Configuration file
--keystore-kdf <value>
--KeyStore.Kdf <value>NETHERMIND_KEYSTORECONFIG_KDF=<value>
{
"KeyStore": {
"Kdf": <value>
}
}See Web3 secret storage definition. Defaults to
scrypt
. -
KeyStore.KdfparamsDklen
- CLI
- Environment variable
- Configuration file
--keystore-kdfparamsdklen <value>
--KeyStore.KdfparamsDklen <value>NETHERMIND_KEYSTORECONFIG_KDFPARAMSDKLEN=<value>
{
"KeyStore": {
"KdfparamsDklen": <value>
}
}See Web3 secret storage definition. Defaults to
32
. -
KeyStore.KdfparamsN
- CLI
- Environment variable
- Configuration file
--keystore-kdfparamsn <value>
--KeyStore.KdfparamsN <value>NETHERMIND_KEYSTORECONFIG_KDFPARAMSN=<value>
{
"KeyStore": {
"KdfparamsN": <value>
}
}See Web3 secret storage definition. Defaults to
262144
. -
KeyStore.KdfparamsP
- CLI
- Environment variable
- Configuration file
--keystore-kdfparamsp <value>
--KeyStore.KdfparamsP <value>NETHERMIND_KEYSTORECONFIG_KDFPARAMSP=<value>
{
"KeyStore": {
"KdfparamsP": <value>
}
}See Web3 secret storage definition. Defaults to
1
. -
KeyStore.KdfparamsR
- CLI
- Environment variable
- Configuration file
--keystore-kdfparamsr <value>
--KeyStore.KdfparamsR <value>NETHERMIND_KEYSTORECONFIG_KDFPARAMSR=<value>
{
"KeyStore": {
"KdfparamsR": <value>
}
}See Web3 secret storage definition. Defaults to
8
. -
KeyStore.KdfparamsSaltLen
- CLI
- Environment variable
- Configuration file
--keystore-kdfparamssaltlen <value>
--KeyStore.KdfparamsSaltLen <value>NETHERMIND_KEYSTORECONFIG_KDFPARAMSSALTLEN=<value>
{
"KeyStore": {
"KdfparamsSaltLen": <value>
}
}See Web3 secret storage definition. Defaults to
32
. -
KeyStore.KeyStoreDirectory
- CLI
- Environment variable
- Configuration file
--keystore-keystoredirectory <value>
--KeyStore.KeyStoreDirectory <value>NETHERMIND_KEYSTORECONFIG_KEYSTOREDIRECTORY=<value>
{
"KeyStore": {
"KeyStoreDirectory": <value>
}
}The path to the keystore directory. Defaults to
keystore
. -
KeyStore.KeyStoreEncoding
- CLI
- Environment variable
- Configuration file
--keystore-keystoreencoding <value>
--KeyStore.KeyStoreEncoding <value>NETHERMIND_KEYSTORECONFIG_KEYSTOREENCODING=<value>
{
"KeyStore": {
"KeyStoreEncoding": <value>
}
}See Web3 secret storage definition. Defaults to
UTF-8
. -
KeyStore.PasswordFiles
- CLI
- Environment variable
- Configuration file
--keystore-passwordfiles <value>
--KeyStore.PasswordFiles <value>NETHERMIND_KEYSTORECONFIG_PASSWORDFILES=<value>
{
"KeyStore": {
"PasswordFiles": <value>
}
}An array of password files paths used to unlock the accounts set with
UnlockAccounts
. Defaults to[]
. -
KeyStore.Passwords
- CLI
- Environment variable
- Configuration file
--keystore-passwords <value>
--KeyStore.Passwords <value>NETHERMIND_KEYSTORECONFIG_PASSWORDS=<value>
{
"KeyStore": {
"Passwords": <value>
}
}An array of passwords used to unlock the accounts set with
UnlockAccounts
. Defaults to[]
. -
KeyStore.SymmetricEncrypterBlockSize
- CLI
- Environment variable
- Configuration file
--keystore-symmetricencrypterblocksize <value>
--KeyStore.SymmetricEncrypterBlockSize <value>NETHERMIND_KEYSTORECONFIG_SYMMETRICENCRYPTERBLOCKSIZE=<value>
{
"KeyStore": {
"SymmetricEncrypterBlockSize": <value>
}
}See Web3 secret storage definition. Defaults to
128
. -
KeyStore.SymmetricEncrypterKeySize
- CLI
- Environment variable
- Configuration file
--keystore-symmetricencrypterkeysize <value>
--KeyStore.SymmetricEncrypterKeySize <value>NETHERMIND_KEYSTORECONFIG_SYMMETRICENCRYPTERKEYSIZE=<value>
{
"KeyStore": {
"SymmetricEncrypterKeySize": <value>
}
}See Web3 secret storage definition. Defaults to
128
. -
KeyStore.TestNodeKey
- CLI
- Environment variable
- Configuration file
--keystore-testnodekey <value>
--KeyStore.TestNodeKey <value>NETHERMIND_KEYSTORECONFIG_TESTNODEKEY=<value>
{
"KeyStore": {
"TestNodeKey": <value>
}
}A plaintext private key to use for testing purposes.
-
KeyStore.UnlockAccounts
- CLI
- Environment variable
- Configuration file
--keystore-unlockaccounts <value>
--KeyStore.UnlockAccounts <value>NETHERMIND_KEYSTORECONFIG_UNLOCKACCOUNTS=<value>
{
"KeyStore": {
"UnlockAccounts": <value>
}
}An array of accounts to unlock on startup using passwords either in
PasswordFiles
andPasswords
. Defaults to[]
.
Merge
-
Merge.BuilderRelayUrl
- CLI
- Environment variable
- Configuration file
--merge-builderrelayurl <value>
--Merge.BuilderRelayUrl <value>NETHERMIND_MERGECONFIG_BUILDERRELAYURL=<value>
{
"Merge": {
"BuilderRelayUrl": <value>
}
}The URL of a builder relay. If specified, blocks are sent to the relay. Defaults to
null
. -
Merge.CollectionsPerDecommit
- CLI
- Environment variable
- Configuration file
--merge-collectionsperdecommit <value>
--Merge.CollectionsPerDecommit <value>NETHERMIND_MERGECONFIG_COLLECTIONSPERDECOMMIT=<value>
{
"Merge": {
"CollectionsPerDecommit": <value>
}
}The number of requests to the garbage collector (GC) to release the process memory.
Allowed values:
-1
: No requests.0
: Requests every time.- A positive number: Requests after that many Engine API calls.
Defaults to
25
. -
Merge.CompactMemory
- CLI
- Environment variable
- Configuration file
--merge-compactmemory <value>
--Merge.CompactMemory <value>NETHERMIND_MERGECONFIG_COMPACTMEMORY=<value>
{
"Merge": {
"CompactMemory": <value>
}
}The memory compaction mode. When set to
Full
, compacts the large object heap (LOH) ifSweepMemory
is set toGen2
.Allowed values:
No
: Disables memory compaction.Yes
: Enables memory compaction.Full
: Enables memory compaction with the large object heap (LOH) ifSweepMemory
is set toGen2
.
Defaults to
Yes
. -
Merge.Enabled
- CLI
- Environment variable
- Configuration file
--merge-enabled <value>
--Merge.Enabled <value>NETHERMIND_MERGECONFIG_ENABLED=<value>
{
"Merge": {
"Enabled": <value>
}
}Whether to enable the Merge hard fork. Allowed values:
true
false
. Defaults totrue
. -
Merge.FinalTotalDifficulty
- CLI
- Environment variable
- Configuration file
--merge-finaltotaldifficulty <value>
--Merge.FinalTotalDifficulty <value>NETHERMIND_MERGECONFIG_FINALTOTALDIFFICULTY=<value>
{
"Merge": {
"FinalTotalDifficulty": <value>
}
}The total difficulty of the last PoW block. Must be greater than or equal to the terminal total difficulty (TTD). Defaults to
null
. -
Merge.PrioritizeBlockLatency
- CLI
- Environment variable
- Configuration file
--merge-prioritizeblocklatency <value>
--Merge.PrioritizeBlockLatency <value>NETHERMIND_MERGECONFIG_PRIORITIZEBLOCKLATENCY=<value>
{
"Merge": {
"PrioritizeBlockLatency": <value>
}
}Whether to reduce block latency by disabling garbage collection during Engine API calls. Allowed values:
true
false
. Defaults totrue
. -
Merge.SweepMemory
- CLI
- Environment variable
- Configuration file
--merge-sweepmemory <value>
--Merge.SweepMemory <value>NETHERMIND_MERGECONFIG_SWEEPMEMORY=<value>
{
"Merge": {
"SweepMemory": <value>
}
}The garbage collection (GC) mode between Engine API calls.
Allowed values:
NoGC
: Disables garbage collection.Gen0
: Enables garbage collection of generation 0.Gen1
: Enables garbage collection of generation 1.Gen2
: Enables garbage collection of generation 2.
Defaults to
Gen1
. -
Merge.TerminalBlockHash
- CLI
- Environment variable
- Configuration file
--merge-terminalblockhash <value>
--Merge.TerminalBlockHash <value>NETHERMIND_MERGECONFIG_TERMINALBLOCKHASH=<value>
{
"Merge": {
"TerminalBlockHash": <value>
}
}The terminal PoW block hash used for the transition. Defaults to
null
. -
Merge.TerminalBlockNumber
- CLI
- Environment variable
- Configuration file
--merge-terminalblocknumber <value>
--Merge.TerminalBlockNumber <value>NETHERMIND_MERGECONFIG_TERMINALBLOCKNUMBER=<value>
{
"Merge": {
"TerminalBlockNumber": <value>
}
}The terminal PoW block number used for the transition.
-
Merge.TerminalTotalDifficulty
- CLI
- Environment variable
- Configuration file
--merge-terminaltotaldifficulty <value>
--Merge.TerminalTotalDifficulty <value>NETHERMIND_MERGECONFIG_TERMINALTOTALDIFFICULTY=<value>
{
"Merge": {
"TerminalTotalDifficulty": <value>
}
}The terminal total difficulty (TTD) used for the transition. Defaults to
null
.
Metrics
-
Metrics.CountersEnabled
- CLI
- Environment variable
- Configuration file
--metrics-countersenabled <value>
--Metrics.CountersEnabled <value>NETHERMIND_METRICSCONFIG_COUNTERSENABLED=<value>
{
"Metrics": {
"CountersEnabled": <value>
}
}Whether to publish metrics using .NET diagnostics that can be collected with dotnet-counters. Allowed values:
true
false
. Defaults tofalse
. -
Metrics.Enabled
- CLI
- Environment variable
- Configuration file
--metrics-enabled <value>
--Metrics.Enabled <value>NETHERMIND_METRICSCONFIG_ENABLED=<value>
{
"Metrics": {
"Enabled": <value>
}
}Whether to publish various metrics to Prometheus Pushgateway at a given interval. Allowed values:
true
false
. Defaults tofalse
. -
Metrics.EnableDbSizeMetrics
- CLI
- Environment variable
- Configuration file
--metrics-enabledbsizemetrics <value>
--Metrics.EnableDbSizeMetrics <value>NETHERMIND_METRICSCONFIG_ENABLEDBSIZEMETRICS=<value>
{
"Metrics": {
"EnableDbSizeMetrics": <value>
}
}Whether to publish database size metrics. Allowed values:
true
false
. Defaults totrue
. -
Metrics.ExposeHost
- CLI
- Environment variable
- Configuration file
--metrics-exposehost <value>
--Metrics.ExposeHost <value>NETHERMIND_METRICSCONFIG_EXPOSEHOST=<value>
{
"Metrics": {
"ExposeHost": <value>
}
}The IP address to expose Prometheus metrics at. The value of
+
means listening on all available hostnames. Setting this tolocalhost
prevents remote access. Defaults to+
. -
Metrics.ExposePort
- CLI
- Environment variable
- Configuration file
--metrics-exposeport <value>
--Metrics.ExposePort <value>NETHERMIND_METRICSCONFIG_EXPOSEPORT=<value>
{
"Metrics": {
"ExposePort": <value>
}
}The port to expose Prometheus metrics at.
-
Metrics.IntervalSeconds
- CLI
- Environment variable
- Configuration file
--metrics-intervalseconds <value>
--Metrics.IntervalSeconds <value>NETHERMIND_METRICSCONFIG_INTERVALSECONDS=<value>
{
"Metrics": {
"IntervalSeconds": <value>
}
}The frequency of pushing metrics to Prometheus, in seconds. Defaults to
5
. -
Metrics.MonitoringGroup
- CLI
- Environment variable
- Configuration file
--metrics-monitoringgroup <value>
--Metrics.MonitoringGroup <value>NETHERMIND_METRICSCONFIG_MONITORINGGROUP=<value>
{
"Metrics": {
"MonitoringGroup": <value>
}
}The Prometheus metrics group name. Defaults to
nethermind
. -
Metrics.MonitoringJob
- CLI
- Environment variable
- Configuration file
--metrics-monitoringjob <value>
--Metrics.MonitoringJob <value>NETHERMIND_METRICSCONFIG_MONITORINGJOB=<value>
{
"Metrics": {
"MonitoringJob": <value>
}
}The Prometheus metrics job name. Defaults to
nethermind
. -
Metrics.NodeName
- CLI
- Environment variable
- Configuration file
--metrics-nodename <value>
--Metrics.NodeName <value>NETHERMIND_METRICSCONFIG_NODENAME=<value>
{
"Metrics": {
"NodeName": <value>
}
}The name to display on the Grafana dashboard. Defaults to
Nethermind
. -
Metrics.PushGatewayUrl
- CLI
- Environment variable
- Configuration file
--metrics-pushgatewayurl <value>
--Metrics.PushGatewayUrl <value>NETHERMIND_METRICSCONFIG_PUSHGATEWAYURL=<value>
{
"Metrics": {
"PushGatewayUrl": <value>
}
}The Prometheus Pushgateway instance URL.
Mining
-
Mining.Enabled
- CLI
- Environment variable
- Configuration file
--mining-enabled <value>
--Mining.Enabled <value>NETHERMIND_MININGCONFIG_ENABLED=<value>
{
"Mining": {
"Enabled": <value>
}
}Whether to produce blocks. Allowed values:
true
false
. Defaults tofalse
. -
Mining.Signer
- CLI
- Environment variable
- Configuration file
--mining-signer <value>
--Mining.Signer <value>NETHERMIND_MININGCONFIG_SIGNER=<value>
{
"Mining": {
"Signer": <value>
}
}The URL of an external signer like Clef. Defaults to
null
.
Network
-
Network.Bootnodes
- CLI
- Environment variable
- Configuration file
--network-bootnodes <value>
--Network.Bootnodes <value>NETHERMIND_NETWORKCONFIG_BOOTNODES=<value>
{
"Network": {
"Bootnodes": <value>
}
}A comma-separated enode list to be used as boot nodes.
-
Network.DiagTracerEnabled
- CLI
- Environment variable
- Configuration file
--network-diagtracerenabled <value>
--Network.DiagTracerEnabled <value>NETHERMIND_NETWORKCONFIG_DIAGTRACERENABLED=<value>
{
"Network": {
"DiagTracerEnabled": <value>
}
}Whether to enable a verbose diagnostic tracing. Allowed values:
true
false
. Defaults tofalse
. -
Network.DiscoveryDns
- CLI
- Environment variable
- Configuration file
--network-discoverydns <value>
--Network.DiscoveryDns <value>NETHERMIND_NETWORKCONFIG_DISCOVERYDNS=<value>
{
"Network": {
"DiscoveryDns": <value>
}
}Use tree is available through a DNS name. For the default of
<chain name>.ethdisco.net
, leave unspecified. Defaults tonull
. -
Network.DiscoveryPort
- CLI
- Environment variable
- Configuration file
--network-discoveryport <value>
--Network.DiscoveryPort <value>NETHERMIND_NETWORKCONFIG_DISCOVERYPORT=<value>
{
"Network": {
"DiscoveryPort": <value>
}
}The UDP port number for incoming discovery connections. It's recommended to keep it the same as the TCP port (
P2PPort
) because other values have not been tested yet. Defaults to30303
. -
Network.EnableUPnP
- CLI
- Environment variable
- Configuration file
--network-enableupnp <value>
--Network.EnableUPnP <value>NETHERMIND_NETWORKCONFIG_ENABLEUPNP=<value>
{
"Network": {
"EnableUPnP": <value>
}
}Whether to enable automatic port forwarding via UPnP. Allowed values:
true
false
. Defaults tofalse
. -
Network.ExternalIp
- CLI
- Environment variable
- Configuration file
--network-externalip <value>
--Network.ExternalIp <value>NETHERMIND_NETWORKCONFIG_EXTERNALIP=<value>
{
"Network": {
"ExternalIp": <value>
}
}The external IP. Use only when the external IP cannot be resolved automatically. Defaults to
null
. -
Network.LocalIp
- CLI
- Environment variable
- Configuration file
--network-localip <value>
--Network.LocalIp <value>NETHERMIND_NETWORKCONFIG_LOCALIP=<value>
{
"Network": {
"LocalIp": <value>
}
}The local IP. Use only when the local IP cannot be resolved automatically. Defaults to
null
. -
Network.MaxActivePeers
- CLI
- Environment variable
- Configuration file
--network-maxactivepeers <value>
--Network.MaxActivePeers <value>NETHERMIND_NETWORKCONFIG_MAXACTIVEPEERS=<value>
{
"Network": {
"MaxActivePeers": <value>
}
}The max allowed number of connected peers. Defaults to
50
. -
Network.MaxNettyArenaCount
- CLI
- Environment variable
- Configuration file
--network-maxnettyarenacount <value>
--Network.MaxNettyArenaCount <value>NETHERMIND_NETWORKCONFIG_MAXNETTYARENACOUNT=<value>
{
"Network": {
"MaxNettyArenaCount": <value>
}
}The maximum DotNetty arena count. Increasing this on a high-core CPU without increasing the memory budget may reduce chunk size so much that it causes a huge memory allocation. Defaults to
8
. -
Network.NettyArenaOrder
- CLI
- Environment variable
- Configuration file
--network-nettyarenaorder <value>
--Network.NettyArenaOrder <value>NETHERMIND_NETWORKCONFIG_NETTYARENAORDER=<value>
{
"Network": {
"NettyArenaOrder": <value>
}
}The size of the DotNetty arena order.
-1
to depend on the memory hint. Defaults to-1
. -
Network.OnlyStaticPeers
- CLI
- Environment variable
- Configuration file
--network-onlystaticpeers <value>
--Network.OnlyStaticPeers <value>NETHERMIND_NETWORKCONFIG_ONLYSTATICPEERS=<value>
{
"Network": {
"OnlyStaticPeers": <value>
}
}Whether to use static peers only. Allowed values:
true
false
. Defaults tofalse
. -
Network.P2PPort
- CLI
- Environment variable
- Configuration file
--network-p2pport <value>
--Network.P2PPort <value>NETHERMIND_NETWORKCONFIG_P2PPORT=<value>
{
"Network": {
"P2PPort": <value>
}
}The TCP port for incoming P2P connections. Defaults to
30303
. -
Network.PriorityPeersMaxCount
- CLI
- Environment variable
- Configuration file
--network-prioritypeersmaxcount <value>
--Network.PriorityPeersMaxCount <value>NETHERMIND_NETWORKCONFIG_PRIORITYPEERSMAXCOUNT=<value>
{
"Network": {
"PriorityPeersMaxCount": <value>
}
}The max number of priority peers. Can be overridden by a plugin. Defaults to
0
. -
Network.StaticPeers
- CLI
- Environment variable
- Configuration file
--network-staticpeers <value>
--Network.StaticPeers <value>NETHERMIND_NETWORKCONFIG_STATICPEERS=<value>
{
"Network": {
"StaticPeers": <value>
}
}A list of peers to keep connection for. Static peers are affected by
MaxActivePeers
. Defaults tonull
.
Optimism
-
Optimism.SequencerUrl
- CLI
- Environment variable
- Configuration file
--optimism-sequencerurl <value>
--Optimism.SequencerUrl <value>NETHERMIND_OPTIMISMCONFIG_SEQUENCERURL=<value>
{
"Optimism": {
"SequencerUrl": <value>
}
}The sequencer address. Defaults to
null
.
Pruning
-
Pruning.AvailableSpaceCheckEnabled
- CLI
- Environment variable
- Configuration file
--pruning-availablespacecheckenabled <value>
--Pruning.AvailableSpaceCheckEnabled <value>NETHERMIND_PRUNINGCONFIG_AVAILABLESPACECHECKENABLED=<value>
{
"Pruning": {
"AvailableSpaceCheckEnabled": <value>
}
}Whether to enables available disk space check. Allowed values:
true
false
. Defaults totrue
. -
Pruning.CacheMb
- CLI
- Environment variable
- Configuration file
--pruning-cachemb <value>
--Pruning.CacheMb <value>NETHERMIND_PRUNINGCONFIG_CACHEMB=<value>
{
"Pruning": {
"CacheMb": <value>
}
}The in-memory cache size, in MB. The bigger the cache size, the bigger the disk space savings. Defaults to
1024
. -
Pruning.FullPruningCompletionBehavior
- CLI
- Environment variable
- Configuration file
--pruning-fullpruningcompletionbehavior <value>
--Pruning.FullPruningCompletionBehavior <value>NETHERMIND_PRUNINGCONFIG_FULLPRUNINGCOMPLETIONBEHAVIOR=<value>
{
"Pruning": {
"FullPruningCompletionBehavior": <value>
}
}The action to take on pruning completion.
Allowed values:
None
: No action.ShutdownOnSuccess
: Shuts Nethermind down when pruning succeeds but leaves it running when fails.AlwaysShutdown
: Shuts Nethermind down when pruning completes, regardless of its status.
Defaults to
None
. -
Pruning.FullPruningDisableLowPriorityWrites
- CLI
- Environment variable
- Configuration file
--pruning-fullpruningdisablelowprioritywrites <value>
--Pruning.FullPruningDisableLowPriorityWrites <value>NETHERMIND_PRUNINGCONFIG_FULLPRUNINGDISABLELOWPRIORITYWRITES=<value>
{
"Pruning": {
"FullPruningDisableLowPriorityWrites": <value>
}
}Whether to disable low-priority for pruning writes. Full pruning uses low-priority write operations to prevent blocking block processing. If block processing is not high-priority, set this option to
true
for faster pruning. Allowed values:true
false
. Defaults tofalse
. -
Pruning.FullPruningMaxDegreeOfParallelism
- CLI
- Environment variable
- Configuration file
--pruning-fullpruningmaxdegreeofparallelism <value>
--Pruning.FullPruningMaxDegreeOfParallelism <value>NETHERMIND_PRUNINGCONFIG_FULLPRUNINGMAXDEGREEOFPARALLELISM=<value>
{
"Pruning": {
"FullPruningMaxDegreeOfParallelism": <value>
}
}The max number of parallel tasks that can be used by full pruning.
Allowed values:
-1
: Uses the number of logical processors.0
: Uses 25% of logical processors.1
: Runs on a single thread.
The recommended value depends on the type of the node:
- If the node needs to be responsive (serves for RPC or validator), then the recommended value is
0
or-1
. - If the node doesn't have many other responsibilities but needs to be able to follow the chain reliably without any delays and produce live logs, the
0
or1
is recommended. - If the node doesn't have to be responsive, has very fast I/O (like NVMe) and the shortest pruning time is to be achieved, then
-1
is recommended. Defaults to0
.
-
Pruning.FullPruningMemoryBudgetMb
- CLI
- Environment variable
- Configuration file
--pruning-fullpruningmemorybudgetmb <value>
--Pruning.FullPruningMemoryBudgetMb <value>NETHERMIND_PRUNINGCONFIG_FULLPRUNINGMEMORYBUDGETMB=<value>
{
"Pruning": {
"FullPruningMemoryBudgetMb": <value>
}
}The memory budget, in MB, used for the trie visit. Increasing this value significantly reduces the IOPS requirement at the expense of memory usage.
0
to disable. Defaults to4000
. -
Pruning.FullPruningMinimumDelayHours
- CLI
- Environment variable
- Configuration file
--pruning-fullpruningminimumdelayhours <value>
--Pruning.FullPruningMinimumDelayHours <value>NETHERMIND_PRUNINGCONFIG_FULLPRUNINGMINIMUMDELAYHOURS=<value>
{
"Pruning": {
"FullPruningMinimumDelayHours": <value>
}
}The minimum delay, in hours, between full pruning operations not to exhaust disk writes. Defaults to
240
. -
Pruning.FullPruningThresholdMb
- CLI
- Environment variable
- Configuration file
--pruning-fullpruningthresholdmb <value>
--Pruning.FullPruningThresholdMb <value>NETHERMIND_PRUNINGCONFIG_FULLPRUNINGTHRESHOLDMB=<value>
{
"Pruning": {
"FullPruningThresholdMb": <value>
}
}The threshold, in MB, to trigger full pruning. Depends on
Mode
andFullPruningTrigger
. Defaults to256000
. -
Pruning.FullPruningTrigger
- CLI
- Environment variable
- Configuration file
--pruning-fullpruningtrigger <value>
--Pruning.FullPruningTrigger <value>NETHERMIND_PRUNINGCONFIG_FULLPRUNINGTRIGGER=<value>
{
"Pruning": {
"FullPruningTrigger": <value>
}
}The full pruning trigger.
Allowed values:
Manual
: Does not trigger. Pruning can be triggered manually.StateDbSize
: Triggers when the state DB size is above the specified threshold.VolumeFreeSpace
: Triggers when the free disk space where the state DB is stored is below the specified threshold.
Defaults to
Manual
. -
Pruning.Mode
- CLI
- Environment variable
- Configuration file
--pruning-mode <value>
--Pruning.Mode <value>NETHERMIND_PRUNINGCONFIG_MODE=<value>
{
"Pruning": {
"Mode": <value>
}
}The pruning mode.
Allowed values:
None
: No pruning (archive).Memory
: In-memory pruning.Full
: Full pruning.Hybrid
: Combined in-memory and full pruning.
Defaults to
Hybrid
. -
Pruning.PersistenceInterval
- CLI
- Environment variable
- Configuration file
--pruning-persistenceinterval <value>
--Pruning.PersistenceInterval <value>NETHERMIND_PRUNINGCONFIG_PERSISTENCEINTERVAL=<value>
{
"Pruning": {
"PersistenceInterval": <value>
}
}The block persistence frequency. If set to
N
, it caches after eachNth
block even if not required by cache memory usage. Defaults to8192
. -
Pruning.PruningBoundary
- CLI
- Environment variable
- Configuration file
--pruning-pruningboundary <value>
--Pruning.PruningBoundary <value>NETHERMIND_PRUNINGCONFIG_PRUNINGBOUNDARY=<value>
{
"Pruning": {
"PruningBoundary": <value>
}
}The number of past states before the state gets pruned. Used to determine how old of a state to keep from the head. Defaults to
64
. -
Pruning.TrackedPastKeyCountMemoryRatio
- CLI
- Environment variable
- Configuration file
--pruning-trackedpastkeycountmemoryratio <value>
--Pruning.TrackedPastKeyCountMemoryRatio <value>NETHERMIND_PRUNINGCONFIG_TRACKEDPASTKEYCOUNTMEMORYRATIO=<value>
{
"Pruning": {
"TrackedPastKeyCountMemoryRatio": <value>
}
}The ratio of memory out of
Pruning.CacheMb
to allocate for the LRU cache, used to track past keys for live pruning. Defaults to0.1
.
Receipt
-
Receipt.CompactReceiptStore
- CLI
- Environment variable
- Configuration file
--receipt-compactreceiptstore <value>
--Receipt.CompactReceiptStore <value>NETHERMIND_RECEIPTCONFIG_COMPACTRECEIPTSTORE=<value>
{
"Receipt": {
"CompactReceiptStore": <value>
}
}Whether to compact receipts database size at the expense of RPC performance. Allowed values:
true
false
. Defaults totrue
. -
Receipt.CompactTxIndex
- CLI
- Environment variable
- Configuration file
--receipt-compacttxindex <value>
--Receipt.CompactTxIndex <value>NETHERMIND_RECEIPTCONFIG_COMPACTTXINDEX=<value>
{
"Receipt": {
"CompactTxIndex": <value>
}
}Whether to compact receipts transaction index database size at the expense of RPC performance. Allowed values:
true
false
. Defaults totrue
. -
Receipt.ReceiptsMigration
- CLI
- Environment variable
- Configuration file
--receipt-receiptsmigration <value>
--Receipt.ReceiptsMigration <value>NETHERMIND_RECEIPTCONFIG_RECEIPTSMIGRATION=<value>
{
"Receipt": {
"ReceiptsMigration": <value>
}
}Whether to migrate the receipts database to the new schema. Allowed values:
true
false
. Defaults tofalse
. -
Receipt.StoreReceipts
- CLI
- Environment variable
- Configuration file
--receipt-storereceipts <value>
--Receipt.StoreReceipts <value>NETHERMIND_RECEIPTCONFIG_STORERECEIPTS=<value>
{
"Receipt": {
"StoreReceipts": <value>
}
}Whether to store receipts after a new block is processed. This setting is independent from downloading receipts in fast sync mode. Allowed values:
true
false
. Defaults totrue
. -
Receipt.TxLookupLimit
- CLI
- Environment variable
- Configuration file
--receipt-txlookuplimit <value>
--Receipt.TxLookupLimit <value>NETHERMIND_RECEIPTCONFIG_TXLOOKUPLIMIT=<value>
{
"Receipt": {
"TxLookupLimit": <value>
}
}The number of recent blocks to maintain transaction index for.
0
to never remove indices,-1
to never index. Defaults to2350000
.
Seq
-
Seq.ApiKey
- CLI
- Environment variable
- Configuration file
--seq-apikey <value>
--Seq.ApiKey <value>NETHERMIND_SEQCONFIG_APIKEY=<value>
{
"Seq": {
"ApiKey": <value>
}
}The Seq API key.
-
Seq.MinLevel
- CLI
- Environment variable
- Configuration file
--seq-minlevel <value>
--Seq.MinLevel <value>NETHERMIND_SEQCONFIG_MINLEVEL=<value>
{
"Seq": {
"MinLevel": <value>
}
}The min log level to sent to Seq. Defaults to
Off
. -
Seq.ServerUrl
- CLI
- Environment variable
- Configuration file
--seq-serverurl <value>
--Seq.ServerUrl <value>NETHERMIND_SEQCONFIG_SERVERURL=<value>
{
"Seq": {
"ServerUrl": <value>
}
}The Seq instance URL. Defaults to
http://localhost:5341
.
Shutter
-
Shutter.BootnodeP2PAddresses
- CLI
- Environment variable
- Configuration file
--shutter-bootnodep2paddresses <value>
--Shutter.BootnodeP2PAddresses <value>NETHERMIND_SHUTTERCONFIG_BOOTNODEP2PADDRESSES=<value>
{
"Shutter": {
"BootnodeP2PAddresses": <value>
}
}The p2p addresses of the Shutter Keyper network bootnodes.
-
Shutter.Enabled
- CLI
- Environment variable
- Configuration file
--shutter-enabled <value>
--Shutter.Enabled <value>NETHERMIND_SHUTTERCONFIG_ENABLED=<value>
{
"Shutter": {
"Enabled": <value>
}
}Whether to enable Shutter. Allowed values:
true
false
. Defaults tofalse
. -
Shutter.InstanceID
- CLI
- Environment variable
- Configuration file
--shutter-instanceid <value>
--Shutter.InstanceID <value>NETHERMIND_SHUTTERCONFIG_INSTANCEID=<value>
{
"Shutter": {
"InstanceID": <value>
}
}Instance ID of Shutter keyper set. Defaults to
0
. -
Shutter.KeyBroadcastContractAddress
- CLI
- Environment variable
- Configuration file
--shutter-keybroadcastcontractaddress <value>
--Shutter.KeyBroadcastContractAddress <value>NETHERMIND_SHUTTERCONFIG_KEYBROADCASTCONTRACTADDRESS=<value>
{
"Shutter": {
"KeyBroadcastContractAddress": <value>
}
}The address of the Shutter key broadcast contract. Defaults to
null
. -
Shutter.KeyperSetManagerContractAddress
- CLI
- Environment variable
- Configuration file
--shutter-keypersetmanagercontractaddress <value>
--Shutter.KeyperSetManagerContractAddress <value>NETHERMIND_SHUTTERCONFIG_KEYPERSETMANAGERCONTRACTADDRESS=<value>
{
"Shutter": {
"KeyperSetManagerContractAddress": <value>
}
}The address of the Shutter keyper set manager contract. Defaults to
null
. -
Shutter.P2PPort
- CLI
- Environment variable
- Configuration file
--shutter-p2pport <value>
--Shutter.P2PPort <value>NETHERMIND_SHUTTERCONFIG_P2PPORT=<value>
{
"Shutter": {
"P2PPort": <value>
}
}The port to connect to Shutter P2P network with. Defaults to
23102
. -
Shutter.SequencerContractAddress
- CLI
- Environment variable
- Configuration file
--shutter-sequencercontractaddress <value>
--Shutter.SequencerContractAddress <value>NETHERMIND_SHUTTERCONFIG_SEQUENCERCONTRACTADDRESS=<value>
{
"Shutter": {
"SequencerContractAddress": <value>
}
}The address of the Shutter sequencer contract. Defaults to
null
. -
Shutter.ShutterKeyFile
- CLI
- Environment variable
- Configuration file
--shutter-shutterkeyfile <value>
--Shutter.ShutterKeyFile <value>NETHERMIND_SHUTTERCONFIG_SHUTTERKEYFILE=<value>
{
"Shutter": {
"ShutterKeyFile": <value>
}
}The filename to use for the Shutter P2P key. If this not specified, the key is autogenerated in
shutter.key.plain
file. -
Shutter.ValidatorInfoFile
- CLI
- Environment variable
- Configuration file
--shutter-validatorinfofile <value>
--Shutter.ValidatorInfoFile <value>NETHERMIND_SHUTTERCONFIG_VALIDATORINFOFILE=<value>
{
"Shutter": {
"ValidatorInfoFile": <value>
}
}The filepath of the validator info json file. Defaults to
null
. -
Shutter.ValidatorRegistryContractAddress
- CLI
- Environment variable
- Configuration file
--shutter-validatorregistrycontractaddress <value>
--Shutter.ValidatorRegistryContractAddress <value>NETHERMIND_SHUTTERCONFIG_VALIDATORREGISTRYCONTRACTADDRESS=<value>
{
"Shutter": {
"ValidatorRegistryContractAddress": <value>
}
}The address of the Shutter validator registry contract. Defaults to
null
.
Snapshot
-
Snapshot.Checksum
- CLI
- Environment variable
- Configuration file
--snapshot-checksum <value>
--Snapshot.Checksum <value>NETHERMIND_SNAPSHOTCONFIG_CHECKSUM=<value>
{
"Snapshot": {
"Checksum": <value>
}
}The SHA-256 checksum of the snapshot file. Defaults to
null
. -
Snapshot.DownloadUrl
- CLI
- Environment variable
- Configuration file
--snapshot-downloadurl <value>
--Snapshot.DownloadUrl <value>NETHERMIND_SNAPSHOTCONFIG_DOWNLOADURL=<value>
{
"Snapshot": {
"DownloadUrl": <value>
}
}The URL of the snapshot file. Defaults to
null
. -
Snapshot.Enabled
- CLI
- Environment variable
- Configuration file
--snapshot-enabled <value>
--Snapshot.Enabled <value>NETHERMIND_SNAPSHOTCONFIG_ENABLED=<value>
{
"Snapshot": {
"Enabled": <value>
}
}Whether to enable the Snapshot plugin. Allowed values:
true
false
. Defaults tofalse
. -
Snapshot.SnapshotDirectory
- CLI
- Environment variable
- Configuration file
--snapshot-snapshotdirectory <value>
--Snapshot.SnapshotDirectory <value>NETHERMIND_SNAPSHOTCONFIG_SNAPSHOTDIRECTORY=<value>
{
"Snapshot": {
"SnapshotDirectory": <value>
}
}The path to the directory to store the snapshot file. Defaults to
snapshot
. -
Snapshot.SnapshotFileName
- CLI
- Environment variable
- Configuration file
--snapshot-snapshotfilename <value>
--Snapshot.SnapshotFileName <value>NETHERMIND_SNAPSHOTCONFIG_SNAPSHOTFILENAME=<value>
{
"Snapshot": {
"SnapshotFileName": <value>
}
}The name of the snapshot file. Defaults to
snapshot.zip
.
Sync
-
Sync.AncientBodiesBarrier
- CLI
- Environment variable
- Configuration file
--sync-ancientbodiesbarrier <value>
--Sync.AncientBodiesBarrier <value>NETHERMIND_SYNCCONFIG_ANCIENTBODIESBARRIER=<value>
{
"Sync": {
"AncientBodiesBarrier": <value>
}
}The earliest body downloaded with fast sync when
DownloadBodiesInFastSync
is set totrue
. The actual value is determined as follows:max{ 1, min{ PivotNumber, AncientBodiesBarrier } }
Defaults to
0
. -
Sync.AncientReceiptsBarrier
- CLI
- Environment variable
- Configuration file
--sync-ancientreceiptsbarrier <value>
--Sync.AncientReceiptsBarrier <value>NETHERMIND_SYNCCONFIG_ANCIENTRECEIPTSBARRIER=<value>
{
"Sync": {
"AncientReceiptsBarrier": <value>
}
}The earliest receipt downloaded with fast sync when
DownloadReceiptsInFastSync
is set totrue
. The actual value is determined as follows:max{ 1, min{ PivotNumber, max{ AncientBodiesBarrier, AncientReceiptsBarrier } } }
Defaults to
0
. -
Sync.DownloadBodiesInFastSync
- CLI
- Environment variable
- Configuration file
--sync-downloadbodiesinfastsync <value>
--Sync.DownloadBodiesInFastSync <value>NETHERMIND_SYNCCONFIG_DOWNLOADBODIESINFASTSYNC=<value>
{
"Sync": {
"DownloadBodiesInFastSync": <value>
}
}Whether to download the block bodies in the Fast sync mode. Allowed values:
true
false
. Defaults totrue
. -
Sync.DownloadHeadersInFastSync
- CLI
- Environment variable
- Configuration file
--sync-downloadheadersinfastsync <value>
--Sync.DownloadHeadersInFastSync <value>NETHERMIND_SYNCCONFIG_DOWNLOADHEADERSINFASTSYNC=<value>
{
"Sync": {
"DownloadHeadersInFastSync": <value>
}
}Whether to download the old block headers in the Fast sync mode. If
false
, Nethermind downloads only recent blocks headers. Allowed values:true
false
. Defaults totrue
. -
Sync.DownloadReceiptsInFastSync
- CLI
- Environment variable
- Configuration file
--sync-downloadreceiptsinfastsync <value>
--Sync.DownloadReceiptsInFastSync <value>NETHERMIND_SYNCCONFIG_DOWNLOADRECEIPTSINFASTSYNC=<value>
{
"Sync": {
"DownloadReceiptsInFastSync": <value>
}
}Whether to download receipts in the Fast sync mode. This slows down the process by a few hours but allows to interact with dApps that perform extensive historical logs searches. Allowed values:
true
false
. Defaults totrue
. -
Sync.ExitOnSynced
- CLI
- Environment variable
- Configuration file
--sync-exitonsynced <value>
--Sync.ExitOnSynced <value>NETHERMIND_SYNCCONFIG_EXITONSYNCED=<value>
{
"Sync": {
"ExitOnSynced": <value>
}
}Whether to shut down Nethermind once sync is finished. Allowed values:
true
false
. Defaults tofalse
. -
Sync.ExitOnSyncedWaitTimeSec
- CLI
- Environment variable
- Configuration file
--sync-exitonsyncedwaittimesec <value>
--Sync.ExitOnSyncedWaitTimeSec <value>NETHERMIND_SYNCCONFIG_EXITONSYNCEDWAITTIMESEC=<value>
{
"Sync": {
"ExitOnSyncedWaitTimeSec": <value>
}
}The time, in seconds, to wait before shutting down Nethermind once sync is finished. Defaults to
60
. -
Sync.FastSync
- CLI
- Environment variable
- Configuration file
--sync-fastsync <value>
--Sync.FastSync <value>NETHERMIND_SYNCCONFIG_FASTSYNC=<value>
{
"Sync": {
"FastSync": <value>
}
}Whether to use the Fast sync mode (the eth/63 synchronization algorithm). Allowed values:
true
false
. Defaults tofalse
. -
Sync.FastSyncCatchUpHeightDelta
- CLI
- Environment variable
- Configuration file
--sync-fastsynccatchupheightdelta <value>
--Sync.FastSyncCatchUpHeightDelta <value>NETHERMIND_SYNCCONFIG_FASTSYNCCATCHUPHEIGHTDELTA=<value>
{
"Sync": {
"FastSyncCatchUpHeightDelta": <value>
}
}In Fast sync mode, the min height threshold limit up to which the Full sync, if already on, stays on when the chain is behind the network head. If the limit is exceeded, it switches back to Fast sync. For regular usage scenarios, setting this value lower than 32 is not recommended as this can cause issues with chain reorgs. Note that the last 2 blocks are always processed in Full sync, so setting it lower than 2 has no effect. Defaults to
8192
. -
Sync.FixReceipts
- CLI
- Environment variable
- Configuration file
--sync-fixreceipts <value>
--Sync.FixReceipts <value>NETHERMIND_SYNCCONFIG_FIXRECEIPTS=<value>
{
"Sync": {
"FixReceipts": <value>
}
}Whether to enable receipts validation that checks for receipts that might be missing because of a bug. If needed, receipts are downloaded from the network. If
true
, the pivot number must be same one used originally as it's used as a cut-off point. Allowed values:true
false
. Defaults tofalse
. -
Sync.FixTotalDifficulty
- CLI
- Environment variable
- Configuration file
--sync-fixtotaldifficulty <value>
--Sync.FixTotalDifficulty <value>NETHERMIND_SYNCCONFIG_FIXTOTALDIFFICULTY=<value>
{
"Sync": {
"FixTotalDifficulty": <value>
}
}Whether to recalculate the total difficulty from
FixTotalDifficultyStartingBlock
toFixTotalDifficultyLastBlock
. Allowed values:true
false
. Defaults tofalse
. -
Sync.FixTotalDifficultyLastBlock
- CLI
- Environment variable
- Configuration file
--sync-fixtotaldifficultylastblock <value>
--Sync.FixTotalDifficultyLastBlock <value>NETHERMIND_SYNCCONFIG_FIXTOTALDIFFICULTYLASTBLOCK=<value>
{
"Sync": {
"FixTotalDifficultyLastBlock": <value>
}
}The last block to recalculate the total difficulty for. If not specified, the best known block is used. Defaults to
null
. -
Sync.FixTotalDifficultyStartingBlock
- CLI
- Environment variable
- Configuration file
--sync-fixtotaldifficultystartingblock <value>
--Sync.FixTotalDifficultyStartingBlock <value>NETHERMIND_SYNCCONFIG_FIXTOTALDIFFICULTYSTARTINGBLOCK=<value>
{
"Sync": {
"FixTotalDifficultyStartingBlock": <value>
}
}The first block to recalculate the total difficulty for. Defaults to
1
. -
Sync.MaxAttemptsToUpdatePivot
- CLI
- Environment variable
- Configuration file
--sync-maxattemptstoupdatepivot <value>
--Sync.MaxAttemptsToUpdatePivot <value>NETHERMIND_SYNCCONFIG_MAXATTEMPTSTOUPDATEPIVOT=<value>
{
"Sync": {
"MaxAttemptsToUpdatePivot": <value>
}
}The max number of attempts to update the pivot block based on the FCU message from the consensus client. Defaults to
2147483647
. -
Sync.MaxProcessingThreads
- CLI
- Environment variable
- Configuration file
--sync-maxprocessingthreads <value>
--Sync.MaxProcessingThreads <value>NETHERMIND_SYNCCONFIG_MAXPROCESSINGTHREADS=<value>
{
"Sync": {
"MaxProcessingThreads": <value>
}
}The max number of threads used for syncing.
0
to use the number of logical processors. Defaults to0
. -
Sync.NetworkingEnabled
- CLI
- Environment variable
- Configuration file
--sync-networkingenabled <value>
--Sync.NetworkingEnabled <value>NETHERMIND_SYNCCONFIG_NETWORKINGENABLED=<value>
{
"Sync": {
"NetworkingEnabled": <value>
}
}Whether to connect to peers and sync. Allowed values:
true
false
. Defaults totrue
. -
Sync.NonValidatorNode
- CLI
- Environment variable
- Configuration file
--sync-nonvalidatornode <value>
--Sync.NonValidatorNode <value>NETHERMIND_SYNCCONFIG_NONVALIDATORNODE=<value>
{
"Sync": {
"NonValidatorNode": <value>
}
}Whether to operate as a non-validator. If
true
, theDownloadReceiptsInFastSync
andDownloadBodiesInFastSync
can be set tofalse
. Allowed values:true
false
. Defaults tofalse
. -
Sync.PivotHash
- CLI
- Environment variable
- Configuration file
--sync-pivothash <value>
--Sync.PivotHash <value>NETHERMIND_SYNCCONFIG_PIVOTHASH=<value>
{
"Sync": {
"PivotHash": <value>
}
}The hash of the pivot block for the Fast sync mode. Defaults to
null
. -
Sync.PivotNumber
- CLI
- Environment variable
- Configuration file
--sync-pivotnumber <value>
--Sync.PivotNumber <value>NETHERMIND_SYNCCONFIG_PIVOTNUMBER=<value>
{
"Sync": {
"PivotNumber": <value>
}
}The number of the pivot block for the Fast sync mode. Defaults to
0
. -
Sync.PivotTotalDifficulty
- CLI
- Environment variable
- Configuration file
--sync-pivottotaldifficulty <value>
--Sync.PivotTotalDifficulty <value>NETHERMIND_SYNCCONFIG_PIVOTTOTALDIFFICULTY=<value>
{
"Sync": {
"PivotTotalDifficulty": <value>
}
}The total difficulty of the pivot block for the Fast sync mode. Defaults to
null
. -
Sync.SnapSync
- CLI
- Environment variable
- Configuration file
--sync-snapsync <value>
--Sync.SnapSync <value>NETHERMIND_SYNCCONFIG_SNAPSYNC=<value>
{
"Sync": {
"SnapSync": <value>
}
}Whether to use the Snap sync mode. Allowed values:
true
false
. Defaults tofalse
. -
Sync.SnapSyncAccountRangePartitionCount
- CLI
- Environment variable
- Configuration file
--sync-snapsyncaccountrangepartitioncount <value>
--Sync.SnapSyncAccountRangePartitionCount <value>NETHERMIND_SYNCCONFIG_SNAPSYNCACCOUNTRANGEPARTITIONCOUNT=<value>
{
"Sync": {
"SnapSyncAccountRangePartitionCount": <value>
}
}The number of account range partitions to create. Increases the Snap sync request concurrency. Allowed values are between between 1 and 256. Defaults to
8
. -
Sync.StrictMode
- CLI
- Environment variable
- Configuration file
--sync-strictmode <value>
--Sync.StrictMode <value>NETHERMIND_SYNCCONFIG_STRICTMODE=<value>
{
"Sync": {
"StrictMode": <value>
}
}Whether to disable some optimizations and do a more extensive sync. Useful when sync state is corrupted. Allowed values:
true
false
. Defaults tofalse
. -
Sync.SynchronizationEnabled
- CLI
- Environment variable
- Configuration file
--sync-synchronizationenabled <value>
--Sync.SynchronizationEnabled <value>NETHERMIND_SYNCCONFIG_SYNCHRONIZATIONENABLED=<value>
{
"Sync": {
"SynchronizationEnabled": <value>
}
}Whether to download and process new blocks. Allowed values:
true
false
. Defaults totrue
. -
Sync.UseGethLimitsInFastBlocks
- CLI
- Environment variable
- Configuration file
--sync-usegethlimitsinfastblocks <value>
--Sync.UseGethLimitsInFastBlocks <value>NETHERMIND_SYNCCONFIG_USEGETHLIMITSINFASTBLOCKS=<value>
{
"Sync": {
"UseGethLimitsInFastBlocks": <value>
}
}Whether to make smaller requests, in Fast Blocks mode, to avoid Geth from disconnecting. On the Geth-heavy networks (e.g., Mainnet), it's a desired behavior while on Nethermind- or OpenEthereum-heavy networks (Aura), it slows down the sync by a factor of ~4. Allowed values:
true
false
. Defaults totrue
.
TraceStore
-
TraceStore.BlocksToKeep
- CLI
- Environment variable
- Configuration file
--tracestore-blockstokeep <value>
--TraceStore.BlocksToKeep <value>NETHERMIND_TRACESTORECONFIG_BLOCKSTOKEEP=<value>
{
"TraceStore": {
"BlocksToKeep": <value>
}
}The number of blocks to store, counting from the head. If
0
, all traces of the processed blocks are stored. Defaults to10000
. -
TraceStore.DeserializationParallelization
- CLI
- Environment variable
- Configuration file
--tracestore-deserializationparallelization <value>
--TraceStore.DeserializationParallelization <value>NETHERMIND_TRACESTORECONFIG_DESERIALIZATIONPARALLELIZATION=<value>
{
"TraceStore": {
"DeserializationParallelization": <value>
}
}The max parallelization when deserialization requests the
trace_filter
method.0
to use the number of logical processors. If you experience a resource shortage, set to a low number. Defaults to0
. -
TraceStore.Enabled
- CLI
- Environment variable
- Configuration file
--tracestore-enabled <value>
--TraceStore.Enabled <value>NETHERMIND_TRACESTORECONFIG_ENABLED=<value>
{
"TraceStore": {
"Enabled": <value>
}
}Whether to enable the TraceStore plugin. If enabled, traces come from the database whenever possible. Allowed values:
true
false
. Defaults tofalse
. -
TraceStore.TraceTypes
- CLI
- Environment variable
- Configuration file
--tracestore-tracetypes <value>
--TraceStore.TraceTypes <value>NETHERMIND_TRACESTORECONFIG_TRACETYPES=<value>
{
"TraceStore": {
"TraceTypes": <value>
}
}The type of traces to store.
Allowed values:
None
: None.VmTrace
: Provides a full trace of the EVM state throughout the execution of transactions at each op-code, including subcalls.StateDiff
: Provides Ethereum state difference detailing all altered portions of the state made due to the execution of transactions.Trace
: Provides transaction trace, including subcalls.Rewards
: Includes block rewards in the trace when tracing full blocks.All
: Combines theRewards
StateDiff
Trace
VmTrace
options.
Defaults to
Trace, Rewards
.
TxPool
-
TxPool.BlobCacheSize
- CLI
- Environment variable
- Configuration file
--txpool-blobcachesize <value>
--TxPool.BlobCacheSize <value>NETHERMIND_TXPOOLCONFIG_BLOBCACHESIZE=<value>
{
"TxPool": {
"BlobCacheSize": <value>
}
}The max number of full blob transactions cached in memory. The default value uses max 200MB for 6 blobs where one blob is 33MB (256 * 128KB) Defaults to
256
. -
TxPool.BlobsSupport
- CLI
- Environment variable
- Configuration file
--txpool-blobssupport <value>
--TxPool.BlobsSupport <value>NETHERMIND_TXPOOLCONFIG_BLOBSSUPPORT=<value>
{
"TxPool": {
"BlobsSupport": <value>
}
}The blobs support mode.
Allowed values:
Disabled
: Disables support for blob transactions.InMemory
: Stores the blob transactions in memory only.Storage
: Stores the blob transactions in the permanent storage.StorageWithReorgs
: Stores the blob transactions in the permanent storage with support for restoring reorganized transactions to the blob pool.
Defaults to
StorageWithReorgs
. -
TxPool.GasLimit
- CLI
- Environment variable
- Configuration file
--txpool-gaslimit <value>
--TxPool.GasLimit <value>NETHERMIND_TXPOOLCONFIG_GASLIMIT=<value>
{
"TxPool": {
"GasLimit": <value>
}
}The max transaction gas allowed. Defaults to
null
. -
TxPool.HashCacheSize
- CLI
- Environment variable
- Configuration file
--txpool-hashcachesize <value>
--TxPool.HashCacheSize <value>NETHERMIND_TXPOOLCONFIG_HASHCACHESIZE=<value>
{
"TxPool": {
"HashCacheSize": <value>
}
}The max number of cached hashes of already known transactions. Set automatically by the memory hint. Defaults to
524288
. -
TxPool.InMemoryBlobPoolSize
- CLI
- Environment variable
- Configuration file
--txpool-inmemoryblobpoolsize <value>
--TxPool.InMemoryBlobPoolSize <value>NETHERMIND_TXPOOLCONFIG_INMEMORYBLOBPOOLSIZE=<value>
{
"TxPool": {
"InMemoryBlobPoolSize": <value>
}
}The max number of full blob transactions stored in memory. Used only if persistent storage is disabled. Defaults to
512
. -
TxPool.MaxPendingBlobTxsPerSender
- CLI
- Environment variable
- Configuration file
--txpool-maxpendingblobtxspersender <value>
--TxPool.MaxPendingBlobTxsPerSender <value>NETHERMIND_TXPOOLCONFIG_MAXPENDINGBLOBTXSPERSENDER=<value>
{
"TxPool": {
"MaxPendingBlobTxsPerSender": <value>
}
}The max number of pending blob transactions per single sender.
0
to lift the limit. Defaults to16
. -
TxPool.MaxPendingTxsPerSender
- CLI
- Environment variable
- Configuration file
--txpool-maxpendingtxspersender <value>
--TxPool.MaxPendingTxsPerSender <value>NETHERMIND_TXPOOLCONFIG_MAXPENDINGTXSPERSENDER=<value>
{
"TxPool": {
"MaxPendingTxsPerSender": <value>
}
}The max number of pending transactions per single sender.
0
to lift the limit. Defaults to0
. -
TxPool.MinBaseFeeThreshold
- CLI
- Environment variable
- Configuration file
--txpool-minbasefeethreshold <value>
--TxPool.MinBaseFeeThreshold <value>NETHERMIND_TXPOOLCONFIG_MINBASEFEETHRESHOLD=<value>
{
"TxPool": {
"MinBaseFeeThreshold": <value>
}
}The minimal percentage of the current base fee that must be surpassed by the max fee (
max_fee_per_gas
) for the transaction to be broadcasted. Defaults to70
. -
TxPool.PeerNotificationThreshold
- CLI
- Environment variable
- Configuration file
--txpool-peernotificationthreshold <value>
--TxPool.PeerNotificationThreshold <value>NETHERMIND_TXPOOLCONFIG_PEERNOTIFICATIONTHRESHOLD=<value>
{
"TxPool": {
"PeerNotificationThreshold": <value>
}
}The average percentage of transaction hashes from persistent broadcast sent to a peer together with hashes of the last added transactions. Defaults to
5
. -
TxPool.PersistentBlobStorageSize
- CLI
- Environment variable
- Configuration file
--txpool-persistentblobstoragesize <value>
--TxPool.PersistentBlobStorageSize <value>NETHERMIND_TXPOOLCONFIG_PERSISTENTBLOBSTORAGESIZE=<value>
{
"TxPool": {
"PersistentBlobStorageSize": <value>
}
}The max number of full blob transactions stored in the database (increasing the number of transactions in the blob pool also results in higher memory usage). The default value uses max 13GB for 6 blobs where one blob is 2GB (16386 * 128KB). Defaults to
16384
. -
TxPool.ReportMinutes
- CLI
- Environment variable
- Configuration file
--txpool-reportminutes <value>
--TxPool.ReportMinutes <value>NETHERMIND_TXPOOLCONFIG_REPORTMINUTES=<value>
{
"TxPool": {
"ReportMinutes": <value>
}
}The current transaction pool state reporting interval, in minutes. Defaults to
null
. -
TxPool.Size
- CLI
- Environment variable
- Configuration file
--txpool-size <value>
--TxPool.Size <value>NETHERMIND_TXPOOLCONFIG_SIZE=<value>
{
"TxPool": {
"Size": <value>
}
}The max number of transactions held in the mempool (the more transactions in the mempool, the more memory used). Defaults to
2048
.
Wallet
-
Wallet.DevAccounts
- CLI
- Environment variable
- Configuration file
--wallet-devaccounts <value>
--Wallet.DevAccounts <value>NETHERMIND_WALLETCONFIG_DEVACCOUNTS=<value>
{
"Wallet": {
"DevAccounts": <value>
}
}The number of autogenerated developer accounts to work with. Developer accounts have private keys from
00...01
to00...n
. Defaults to10
.
Environment variables
All configuration options have their environment variable counterparts, so Nethermind can be configured with environment variables the same way as with command line options. The environment variables follow this naming convention:
NETHERMIND_{NAMESPACE}CONFIG_{OPTION}
For instance, the environment variable equivalent of the JsonRpc.JwtSecretFile
option is NETHERMIND_JSONRPCCONFIG_JWTSECRETFILE
. For the full list of the available environment variables, see Options by namespaces.
Configuration file
The configuration files use JSON format. The bundled configuration files are located in the configs
directory and named after the network they are used for. For instance, see the Mainnet configuration file mainnet.json
.