Skip to main content

Configuration

Basics

accounts

Account is a list that includes the addresses and amount of tokens initially allocated. The value of each node has must be consistent.

Value TypeDefault ValueUnitOptional
Vec<InitialAccount>--False

Example:

[[accounts]]
address = "0xa0ee7a142d267c1f36714e4a8f75612f20a79720"
balance = "0x04ee2d6d415b85acef8100000000"

crosschain_contract_address

The address of the cross-chain contract. The value each nodes has must be consistent. (They are not in use until the official launch of the cross-chain functionality.)

Value TypeDefault ValueUnitOptional
H160--False

data_path

The path for data storage.

Value TypeDefault ValueUnitOptional
String--False

privkey

The private key for the HTTP listening port node, used for handshake and message signing. Privkey can be directly written in the configuration file or read from an environment variable. For instance, privkey = A refers to the privkey fetches its value from Environment Variable A.

Value TypeDefault ValueUnitOptional
Hex--False

wckb_contract_address

The address of the WCKB (Wrapped CKB) ERC20 contract that represents the cross-chain assets transferred from CKB (currently not in use). The value each node has must be consistent.

Value TypeDefault ValueUnitOptional
H160--False

RPC

maxconn

The maximum number of TCP connections.

Value TypeDefault ValueUnitOptional
Unit25000-False

max_payload_size

The maximum payload size for RPC requests, primarily for limiting the send_rawTransaction interface. Recommended value is 1MB.

Value TypeDefault ValueUnitOptional
Uint1024*1024*1024ByteFalse

http_listening_address

The HTTP listening port.

Value TypeDefault ValueUnitOptional
SocketAddr--False

For example:

[rpc]
http_listening_address = "127.0.0.1:8002"

ws_listening_address

The WebSocket listening port.

Value TypeDefault ValueUnitOptional
SocketAddr--False

For example:

[rpc]
ws_listening_address = "127.0.0.1:8012"

client_version

The client version.

Value TypeDefault ValueUnitOptional
String"0.1.0"-True

gas_cap

The maximum gas limit allowed for RPC.

Value TypeDefault ValueUnitOptional
Uint25000000-True

Network

bootstraps

An array containing the multiaddr of bootstrap nodes. A peer ID is required for each multiaddr, which is sha256(pub_key) with base58 encoding.

Value TypeDefault ValueUnitOptional
Vec<String>--False

For example:

[[network.bootstraps]]
multi_address = "/ip4/127.0.0.1/tcp/10001/p2p/QmNk6bBwkLPuqnsrtxpp819XLZY3ymgjs3p1nKtxBVgqxj"

listening_address

The listening address.

Value TypeDefault ValueUnitOptional
MultiAddr--False

For example:

[network]
listening_address = "/ip4/127.0.0.1/tcp/10000"

max_connected_peers

The maximum number of connectable peers.

Value TypeDefault ValueUnitOptional
Uint40-True

ping_interval

The interval of the timed ping-pong messages of the protocol.

Value TypeDefault ValueUnitOptional
Uint15sTrue

rpc_timeout

The timeout duration of RPC requests.

Value TypeDefault ValueUnitOptional
Uint10sTrue

selfcheck_interval

The self-check interval of the maximum number of inbound P2P network connections.

Value TypeDefault ValueUnitOptional
Uint35sTrue

Mempool

pool_size

The size of the transaction pool.

Value TypeDefault ValueUnitOptional
Uint--False

timeout_gap

The number of blocks after which a transaction becomes invalid.

Value TypeDefault ValueUnitOptional
Uint--False

broadcast_txs_interval

The interval of broadcasting transactions.

Value TypeDefault ValueUnitOptional
Uint200msTrue

broadcast_txs_size

The number of transactions broadcasted at once.

Value TypeDefault ValueUnitOptional
Uint200-True

Executor

triedb_cache_size

The size of the trie database cache. Recommended value is 200 or higher. Larger value consumes more memory.

Value TypeDefault ValueUnitOptional
Uint200-False

Consensus

sync_txs_chunk_size

The maximum number of transactions in a chunk when synchronizing transactions.

Value TypeDefault ValueUnitOptional
Uint500-True

Logger

console_show_file_and_line

Whether to display file names and line numbers when output in console.

Value TypeDefault ValueUnitOptional
BoolFalse-True

file_size_limit

The maximum size of log files. 1GB by default.

Value TypeDefault ValueUnitOptional
Uint1024*1024*1024ByteTrue

filter

The level of log output.

Value TypeDefault ValueUnitOptional
StringInfo-True

log_path

The path of log files.

Value TypeDefault ValueUnitOptional
Stringdata_path/logs-True

log_to_console

Whether to output logs to console.

Value TypeDefault ValueUnitOptional
BoolTrue-True

log_to_file

Whether to output logs to files.

Value TypeDefault ValueUnitOptional
BoolTrue-True

metrics

Whether to enable metrics.

Value TypeDefault ValueUnitOptional
BoolTrue-True

modules_level

The log output level defined by module.

Value TypeDefault ValueUnitOptional
HashMap<String, String>--True

For example:

[logger]
modules_level = { "overlord::state::process" = "debug", core_consensus = "error" }

Rocksdb

max_open_files

The maximum number of open files.

Value TypeDefault ValueUnitOptional
Uint--False

cache_size

The cache size for each column family. Larger value consumes more memory. Recommended to be 100 or higher.

Value TypeDefault ValueUnitOptional
Uint100-True

options_file

The path to the RocksDB configuration file. It is recommended to use the provided configuration file.

Value TypeDefault ValueUnitOptional
String--True

Jaeger (Optional)

service_name

The name of service.

Value TypeDefault ValueUnitOptional
String--True

tracing_address

The address to send tracing span.

Value TypeDefault ValueUnitOptional
SocketAddr--True

tracing_batch_size

The size of tracing batch.

Value TypeDefault ValueUnitOptional
Uint--True

Prometheus (Optional)

listening_address

The Prometheus listening port.

Value TypeDefault ValueUnitOptional
SocketAddr--True