github.com/palisadeinc/bor@v0.0.0-20230615125219-ab7196213d15/docs/cli/example_config.toml (about) 1 # This configuration file is for reference and learning purpose only. 2 # The default value of the flags is provided below (except a few flags which has custom defaults which are explicitly mentioned). 3 # Recommended values for mainnet and/or mumbai are also provided. 4 5 chain = "mainnet" # Name of the chain to sync ("mumbai", "mainnet") or path to a genesis file 6 identity = "Annon-Identity" # Name/Identity of the node (default = OS hostname) 7 verbosity = 3 # Logging verbosity for the server (5=trace|4=debug|3=info|2=warn|1=error|0=crit) (`log-level` was replaced by `verbosity`, and thus will be deprecated soon) 8 vmdebug = false # Record information useful for VM and contract debugging 9 datadir = "var/lib/bor" # Path of the data directory to store information 10 ancient = "" # Data directory for ancient chain segments (default = inside chaindata) 11 keystore = "" # Path of the directory where keystores are located 12 "rpc.batchlimit" = 100 # Maximum number of messages in a batch (default=100, use 0 for no limits) 13 "rpc.returndatalimit" = 100000 # Maximum size (in bytes) a result of an rpc request could have (default=100000, use 0 for no limits) 14 syncmode = "full" # Blockchain sync mode (only "full" sync supported) 15 gcmode = "full" # Blockchain garbage collection mode ("full", "archive") 16 snapshot = true # Enables the snapshot-database mode 17 "bor.logs" = false # Enables bor log retrieval 18 ethstats = "" # Reporting URL of a ethstats service (nodename:secret@host:port) 19 devfakeauthor = false # Run miner without validator set authorization [dev mode] : Use with '--bor.withoutheimdall' (default: false) 20 21 ["eth.requiredblocks"] # Comma separated block number-to-hash mappings to require for peering (<number>=<hash>) (default = empty map) 22 "31000000" = "0x2087b9e2b353209c2c21e370c82daa12278efd0fe5f0febe6c29035352cf050e" 23 "32000000" = "0x875500011e5eecc0c554f95d07b31cf59df4ca2505f4dbbfffa7d4e4da917c68" 24 25 [log] 26 vmodule = "" # Per-module verbosity: comma-separated list of <pattern>=<level> (e.g. eth/*=5,p2p=4) 27 json = false # Format logs with JSON 28 backtrace = "" # Request a stack trace at a specific logging statement (e.g. "block.go:271") 29 debug = true # Prepends log messages with call-site location (file and line number) - {requires some effort} 30 31 [p2p] 32 maxpeers = 50 # Maximum number of network peers (network disabled if set to 0) 33 maxpendpeers = 50 # Maximum number of pending connection attempts 34 bind = "0.0.0.0" # Network binding address 35 port = 30303 # Network listening port 36 nodiscover = false # Disables the peer discovery mechanism (manual peer addition) 37 nat = "any" # NAT port mapping mechanism (any|none|upnp|pmp|extip:<IP>) 38 netrestrict = "" # Restricts network communication to the given IP networks (CIDR masks) 39 nodekey = "" # P2P node key file 40 nodekeyhex = "" # P2P node key as hex 41 txarrivalwait = "500ms" # Maximum duration to wait before requesting an announced transaction 42 [p2p.discovery] 43 v5disc = false # Enables the experimental RLPx V5 (Topic Discovery) mechanism 44 bootnodes = [] # Comma separated enode URLs for P2P discovery bootstrap 45 bootnodesv4 = [] # List of initial v4 bootnodes 46 bootnodesv5 = [] # List of initial v5 bootnodes 47 static-nodes = [] # List of static nodes 48 trusted-nodes = [] # List of trusted nodes 49 dns = [] # List of enrtree:// URLs which will be queried for nodes to connect to 50 51 [heimdall] 52 url = "http://localhost:1317" # URL of Heimdall service 53 "bor.without" = false # Run without Heimdall service (for testing purpose) 54 grpc-address = "" # Address of Heimdall gRPC service 55 56 [txpool] 57 locals = [] # Comma separated accounts to treat as locals (no flush, priority inclusion) 58 nolocals = false # Disables price exemptions for locally submitted transactions 59 journal = "transactions.rlp" # Disk journal for local transaction to survive node restarts 60 rejournal = "1h0m0s" # Time interval to regenerate the local transaction journal 61 pricelimit = 1 # Minimum gas price limit to enforce for acceptance into the pool (mainnet = 30000000000) 62 pricebump = 10 # Price bump percentage to replace an already existing transaction 63 accountslots = 16 # Minimum number of executable transaction slots guaranteed per account 64 globalslots = 32768 # Maximum number of executable transaction slots for all accounts 65 accountqueue = 16 # Maximum number of non-executable transaction slots permitted per account 66 globalqueue = 32768 # Maximum number of non-executable transaction slots for all accounts 67 lifetime = "3h0m0s" # Maximum amount of time non-executable transaction are queued 68 69 [miner] 70 mine = false # Enable mining 71 etherbase = "" # Public address for block mining rewards 72 extradata = "" # Block extra data set by the miner (default = client version) 73 gaslimit = 30000000 # Target gas ceiling for mined blocks 74 gasprice = "1000000000" # Minimum gas price for mining a transaction (recommended for mainnet = 30000000000, default suitable for mumbai/devnet) 75 recommit = "2m5s" # The time interval for miner to re-create mining work 76 commitinterrupt = true # Interrupt the current mining work when time is exceeded and create partial blocks 77 78 [jsonrpc] 79 ipcdisable = false # Disable the IPC-RPC server 80 ipcpath = "" # Filename for IPC socket/pipe within the datadir (explicit paths escape it) 81 gascap = 50000000 # Sets a cap on gas that can be used in eth_call/estimateGas (0=infinite) 82 evmtimeout = "5s" # Sets a timeout used for eth_call (0=infinite) 83 txfeecap = 5.0 # Sets a cap on transaction fee (in ether) that can be sent via the RPC APIs (0 = no cap) 84 allow-unprotected-txs = false # Allow for unprotected (non EIP155 signed) transactions to be submitted via RPC (default: false) 85 [jsonrpc.http] 86 enabled = false # Enable the HTTP-RPC server 87 port = 8545 # http.port 88 prefix = "" # http.rpcprefix 89 host = "localhost" # HTTP-RPC server listening interface 90 api = ["eth", "net", "web3", "txpool", "bor"] # API's offered over the HTTP-RPC interface 91 vhosts = ["localhost"] # Comma separated list of virtual hostnames from which to accept requests (server enforced). Accepts '*' wildcard. 92 corsdomain = ["localhost"] # Comma separated list of domains from which to accept cross origin requests (browser enforced) 93 ep-size = 40 # Maximum size of workers to run in rpc execution pool for HTTP requests (default: 40) 94 ep-requesttimeout = "0s" # Request Timeout for rpc execution pool for HTTP requests (default: 0s, 0s = disabled) 95 [jsonrpc.ws] 96 enabled = false # Enable the WS-RPC server 97 port = 8546 # WS-RPC server listening port 98 prefix = "" # HTTP path prefix on which JSON-RPC is served. Use '/' to serve on all paths. 99 host = "localhost" # ws.addr 100 api = ["net", "web3"] # API's offered over the WS-RPC interface 101 origins = ["localhost"] # Origins from which to accept websockets requests 102 ep-size = 40 # Maximum size of workers to run in rpc execution pool for WS requests (default: 40) 103 ep-requesttimeout = "0s" # Request Timeout for rpc execution pool for WS requests (default: 0s, 0s = disabled) 104 [jsonrpc.graphql] 105 enabled = false # Enable GraphQL on the HTTP-RPC server. Note that GraphQL can only be started if an HTTP server is started as well. 106 port = 0 # 107 prefix = "" # 108 host = "" # 109 vhosts = ["localhost"] # Comma separated list of virtual hostnames from which to accept requests (server enforced). Accepts '*' wildcard. 110 corsdomain = ["localhost"] # Comma separated list of domains from which to accept cross origin requests (browser enforced) 111 [jsonrpc.auth] 112 jwtsecret = "" # Path to a JWT secret to use for authenticated RPC endpoints 113 addr = "localhost" # Listening address for authenticated APIs 114 port = 8551 # Listening port for authenticated APIs 115 vhosts = ["localhost"] # Comma separated list of virtual hostnames from which to accept requests (server enforced). Accepts '*' wildcard. 116 [jsonrpc.timeouts] 117 read = "10s" 118 write = "30s" 119 idle = "2m0s" 120 121 [gpo] 122 blocks = 20 # Number of recent blocks to check for gas prices 123 percentile = 60 # Suggested gas price is the given percentile of a set of recent transaction gas prices 124 maxheaderhistory = 1024 # Maximum header history of gasprice oracle 125 maxblockhistory = 1024 # Maximum block history of gasprice oracle 126 maxprice = "5000000000000" # Maximum gas price will be recommended by gpo 127 ignoreprice = "2" # Gas price below which gpo will ignore transactions (recommended for mainnet = 30000000000, default suitable for mumbai/devnet) 128 129 [telemetry] 130 metrics = false # Enable metrics collection and reporting 131 expensive = false # Enable expensive metrics collection and reporting 132 prometheus-addr = "127.0.0.1:7071" # Address for Prometheus Server 133 opencollector-endpoint = "" # OpenCollector Endpoint (host:port) 134 [telemetry.influx] 135 influxdb = false # Enable metrics export/push to an external InfluxDB database (v1) 136 endpoint = "" # InfluxDB API endpoint to report metrics to 137 database = "" # InfluxDB database name to push reported metrics to 138 username = "" # Username to authorize access to the database 139 password = "" # Password to authorize access to the database 140 influxdbv2 = false # Enable metrics export/push to an external InfluxDB v2 database 141 token = "" # Token to authorize access to the database (v2 only) 142 bucket = "" # InfluxDB bucket name to push reported metrics to (v2 only) 143 organization = "" # InfluxDB organization name (v2 only) 144 [telemetry.influx.tags] # Comma-separated InfluxDB tags (key/values) attached to all measurements 145 cloud = "aws" 146 host = "annon-host" 147 ip = "99.911.221.66" 148 region = "us-north-1" 149 150 [cache] 151 cache = 1024 # Megabytes of memory allocated to internal caching (recommended for mainnet = 4096, default suitable for mumbai/devnet) 152 gc = 25 # Percentage of cache memory allowance to use for trie pruning (default = 25% full mode, 0% archive mode) 153 snapshot = 10 # Percentage of cache memory allowance to use for snapshot caching (default = 10% full mode, 20% archive mode) 154 database = 50 # Percentage of cache memory allowance to use for database io 155 trie = 15 # Percentage of cache memory allowance to use for trie caching (default = 15% full mode, 30% archive mode) 156 journal = "triecache" # Disk journal directory for trie cache to survive node restarts 157 rejournal = "1h0m0s" # Time interval to regenerate the trie cache journal 158 noprefetch = false # Disable heuristic state prefetch during block import (less CPU and disk IO, more time waiting for data) 159 preimages = false # Enable recording the SHA3/keccak preimages of trie keys 160 txlookuplimit = 2350000 # Number of recent blocks to maintain transactions index for (default = about 56 days, 0 = entire chain) 161 triesinmemory = 128 # Number of block states (tries) to keep in memory 162 timeout = "1h0m0s" # Time after which the Merkle Patricia Trie is stored to disc from memory 163 fdlimit = 0 # Raise the open file descriptor resource limit (default = system fd limit) 164 165 [accounts] 166 unlock = [] # Comma separated list of accounts to unlock 167 password = "" # Password file to use for non-interactive password input 168 allow-insecure-unlock = false # Allow insecure account unlocking when account-related RPCs are exposed by http 169 lightkdf = false # Reduce key-derivation RAM & CPU usage at some expense of KDF strength 170 disable-bor-wallet = true # Disable the personal wallet endpoints 171 172 [grpc] 173 addr = ":3131" # Address and port to bind the GRPC server 174 175 [developer] 176 dev = false # Enable developer mode with ephemeral proof-of-authority network and a pre-funded developer account, mining enabled 177 period = 0 # Block period to use in developer mode (0 = mine only if transaction pending) 178 gaslimit = 11500000 # Initial block gas limit 179 180 [pprof] 181 pprof = false # Enable the pprof HTTP server 182 port = 6060 # pprof HTTP server listening port 183 addr = "127.0.0.1" # pprof HTTP server listening interface 184 memprofilerate = 524288 # Turn on memory profiling with the given rate 185 blockprofilerate = 0 # Turn on block profiling with the given rate