--help in v1.10.0.
For guidance on choosing values — the batcher policy, cost tuning, multi-blob
transactions, and sequencer throttling — see the
batcher configuration guide.
Batch generation
batch-type
The batch type. 0 forSingularBatch and 1 for SpanBatch. The default value
is 0 for SingularBatch.
See the span batch feature page to learn more.
- Syntax
- Example
- Environment Variable
--batch-type=<value>max-blocks-per-span-batch
Maximum number of blocks to add to a span batch. The default value is0,
meaning no maximum.
- Syntax
- Example
- Environment Variable
--max-blocks-per-span-batch=<value>compression-algo
The compression algorithm to use. Valid options: zlib, brotli, brotli-9, brotli-10, brotli-11. The default value iszlib.
- Syntax
- Example
- Environment Variable
--compression-algo=<value>compressor
The type of compressor. Valid options: none, ratio, shadow. The default value isshadow.
- Syntax
- Example
- Environment Variable
--compressor=<value>approx-compr-ratio
Only relevant for ratio compressor. The approximate compression ratio (<=1.0). The default value is 0.6.
- Syntax
- Example
- Environment Variable
--approx-compr-ratio=<value>poll-interval
How frequently to poll L2 for new blocks. The default value is6s.
- Syntax
- Example
- Environment Variable
--poll-interval=<value>Batch submission
data-availability-type
Setting this flag to
auto will allow the batcher to automatically switch between calldata and blobs based on the current L1 gas price.calldata, blobs, and auto. The default value is calldata.
- Syntax
- Example
- Environment Variable
--data-availability-type=<value>target-num-frames
The target number of frames to create per channel. Controls number of blobs per blob tx, if using Blob DA. The default value is1.
- Syntax
- Example
- Environment Variable
--target-num-frames=<value>max-channel-duration
The maximum duration of L1-blocks to keep a channel open. 0 to disable. The default value is0.
- Syntax
- Example
- Environment Variable
--max-channel-duration=<value>sub-safety-margin
The batcher tx submission safety margin (in #L1-blocks) to subtract from a channel’s timeout and sequencing window, to guarantee safe inclusion of a channel on L1. The default value is10.
- Syntax
- Example
- Environment Variable
--sub-safety-margin=<value>max-l1-tx-size-bytes
The maximum size of a batch tx submitted to L1. Ignored for blobs, where max blob size will be used. The default value is120000.
- Syntax
- Example
- Environment Variable
--max-l1-tx-size-bytes=<value>Batcher startup
wait-node-sync
Indicates if, during startup, the batcher should wait for a recent batcher tx on L1 to finalize (via more block confirmations). This should help avoid duplicate batcher txs. The default value isfalse.
- Syntax
- Example
- Environment Variable
--wait-node-sync=<value>check-recent-txs-depth
Indicates how many blocks back the batcher should look during startup for a recent batch tx on L1. This can speed up waiting for node sync. It should be set to the verifier confirmation depth of the sequencer (e.g. 4). The default value is0.
- Syntax
- Example
- Environment Variable
--check-recent-txs-depth=<value>stopped
Initialize the batcher in a stopped state. The batcher can be started using the admin_startBatcher RPC. The default value isfalse.
- Syntax
- Example
- Environment Variable
--stopped=<value>Throttling
The batcher supports throttling configuration to limit DA usage for transactions and blocks, and to control throttle intensity via several controller types. The following flags are available:throttle.additional-endpoints
Comma-separated list of endpoints to distribute throttling configuration to (in addition to the L2 endpoints specified with--l2-eth-rpc).
- Syntax
- Example
- Environment Variable
--throttle.additional-endpoints=<endpoint1>,<endpoint2>,...throttle.tx-size-lower-limit
The DA size limit for individual transactions when the throttle intensity is at its maximum.0 disables limits; use 1 as the smallest effective limit.
- Syntax
- Example
- Environment Variable
--throttle.tx-size-lower-limit=<bytes>throttle.tx-size-upper-limit
The DA size limit for individual transactions as throttle intensity approaches0 (minimal throttling). Not applied when throttling is inactive.
- Syntax
- Example
- Environment Variable
--throttle.tx-size-upper-limit=<bytes>throttle.block-size-lower-limit
The DA size limit for blocks when throttle intensity is at maximum (applies for linear and quadratic controllers).0 disables limits; use 1 as the smallest effective limit.
- Syntax
- Example
- Environment Variable
--throttle.block-size-lower-limit=<bytes>throttle.block-size-upper-limit
The DA size limit for blocks when throttling is inactive (throttle intensity = 0).- Syntax
- Example
- Environment Variable
--throttle.block-size-upper-limit=<bytes>throttle.controller-type
Type of throttle controller to use. Valid values:step, linear, or quadratic (default).
- Syntax
- Example
- Environment Variable
--throttle.controller-type=<step|linear|quadratic|pid>throttle.unsafe-da-bytes-lower-threshold
Threshold onunsafe_da_bytes beyond which the batcher will start to throttle the block builder. 0 disables throttling.
- Syntax
- Example
- Environment Variable
--throttle.unsafe-da-bytes-lower-threshold=<bytes>throttle.unsafe-da-bytes-upper-threshold
Threshold onunsafe_da_bytes at which throttling reaches maximum intensity (applies for linear and quadratic controllers).
- Syntax
- Example
- Environment Variable
--throttle.unsafe-da-bytes-upper-threshold=<bytes>Transaction manager
num-confirmations
Number of confirmations which we will wait after sending a transaction. The default value is10.
- Syntax
- Example
- Environment Variable
--num-confirmations=<value>max-pending-tx
The maximum number of pending transactions. 0 for no limit. The default value is1.
- Syntax
- Example
- Environment Variable
--max-pending-tx=<value>resubmission-timeout
Duration we will wait before resubmitting a transaction to L1. The default value is48s.
- Syntax
- Example
- Environment Variable
--resubmission-timeout=<value>safe-abort-nonce-too-low-count
Number of ErrNonceTooLow observations required to give up on a tx at a particular nonce without receiving confirmation. The default value is3.
- Syntax
- Example
- Environment Variable
--safe-abort-nonce-too-low-count=<value>txmgr.min-basefee
Enforces a minimum base fee (in GWei) to assume when determining tx fees. 1 GWei by default. The default value is1.
- Syntax
- Example
- Environment Variable
--txmgr.min-basefee=<value>txmgr.min-tip-cap
Enforces a minimum tip cap (in GWei) to use when determining tx fees. 1 GWei by default. The default value is1.
- Syntax
- Example
- Environment Variable
--txmgr.min-tip-cap=<value>fee-limit-multiplier
The multiplier applied to fee suggestions to put a hard limit on fee increases. The default value is5.
- Syntax
- Example
- Environment Variable
--fee-limit-multiplier=<value>txmgr.fee-limit-threshold
The minimum threshold (in GWei) at which fee bumping starts to be capped. Allows arbitrary fee bumps below this threshold. The default value is100.
- Syntax
- Example
- Environment Variable
--txmgr.fee-limit-threshold=<value>txmgr.receipt-query-interval
Frequency to poll for receipts. The default value is12s.
- Syntax
- Example
- Environment Variable
--txmgr.receipt-query-interval=<value>txmgr.not-in-mempool-timeout
Timeout for aborting a tx send if the tx does not make it to the mempool. The default value is2m0s.
- Syntax
- Example
- Environment Variable
--txmgr.not-in-mempool-timeout=<value>txmgr.send-timeout
Timeout for sending transactions. If 0 it is disabled. The default value is0s.
- Syntax
- Example
- Environment Variable
--txmgr.send-timeout=<value>Authentication and wallet
private-key
The private key to use with the service. Must not be used with mnemonic.- Syntax
- Example
- Environment Variable
--private-key=<value>mnemonic
The mnemonic used to derive the wallets for either the service.- Syntax
- Example
- Environment Variable
--mnemonic=<value>hd-path
The HD path used to derive the sequencer wallet from the mnemonic. The mnemonic flag must also be set.- Syntax
- Example
- Environment Variable
--hd-path=<value>signer.address
Address the signer is signing transactions for.- Syntax
- Example
- Environment Variable
--signer.address=<value>signer.endpoint
Signer endpoint the client will connect to.- Syntax
- Example
- Environment Variable
--signer.endpoint=<value>signer.header
Headers to pass to the remote signer. Formatkey=value.Value can contain any character allowed in an HTTP header.
When using env vars, split multiple headers with commas.
When using flags, provide one key-value pair per flag.
- Syntax
- Example
- Environment Variable
--signer.header=<key=value>signer.tls.ca
tls ca cert path. The default value istls/ca.crt.
- Syntax
- Example
- Environment Variable
--signer.tls.ca=<value>signer.tls.cert
tls cert path. The default value istls/tls.crt.
- Syntax
- Example
- Environment Variable
--signer.tls.cert=<value>signer.tls.key
tls key. The default value istls/tls.key.
- Syntax
- Example
- Environment Variable
--signer.tls.key=<value>Network connections
l1-eth-rpc
HTTP provider URL for L1.- Syntax
- Example
- Environment Variable
--l1-eth-rpc=<value>l2-eth-rpc
HTTP provider URL for L2 execution engine. A comma-separated list enables the active L2 endpoint provider. Such a list needs to match the number of rollup-rpcs provided.- Syntax
- Example
- Environment Variable
--l2-eth-rpc=<value>rollup-rpc
HTTP provider URL for Rollup node. A comma-separated list enables the active L2 endpoint provider. Such a list needs to match the number of l2-eth-rpcs provided.- Syntax
- Example
- Environment Variable
--rollup-rpc=<value>rpc.addr
rpc listening address. The default value is0.0.0.0.
- Syntax
- Example
- Environment Variable
--rpc.addr=<value>rpc.enable-admin
Enable the admin API. The default value isfalse.
- Syntax
- Example
- Environment Variable
--rpc.enable-admin=<value>rpc.port
rpc listening port. The default value is8545.
- Syntax
- Example
- Environment Variable
--rpc.port=<value>network-timeout
Timeout for all network operations. The default value is10s.
- Syntax
- Example
- Environment Variable
--network-timeout=<value>Alt-DA mode (Beta feature)
altda.enabled
Enable Alt-DA mode, Alt-DA mode is a Beta feature of the OP Stack. While it has received initial review from core contributors, it is still undergoing testing, and may have bugs or other issues. The default value isfalse.
- Syntax
- Example
- Environment Variable
--altda.enabled=<value>altda.da-server
HTTP address of a DA Server.- Syntax
- Example
- Environment Variable
--altda.da-server=<value>altda.da-service
Use DA service type where commitments are generated by Alt-DA server. The default value isfalse.
- Syntax
- Example
- Environment Variable
--altda.da-service=<value>altda.get-timeout
Timeout for get requests. 0 means no timeout.- Syntax
- Example
- Environment Variable
--altda.get-timeout=<value>altda.put-timeout
Timeout for put requests. 0 means no timeout.- Syntax
- Example
- Environment Variable
--altda.put-timeout=<value>altda.max-concurrent-da-requests
Maximum number of concurrent requests to the DA server.- Syntax
- Example
- Environment Variable
--altda.max-concurrent-da-requests=<value>altda.verify-on-read
Verify input data matches the commitments from the DA storage service.- Syntax
- Example
- Environment Variable
--altda.verify-on-read=<value>Logging and monitoring
log.level
The lowest log level that will be output. The default value isINFO.
- Syntax
- Example
- Environment Variable
--log.level=<value>log.format
Format the log output. Supported formats: ‘text’, ‘terminal’, ‘logfmt’, ‘json’, ‘json-pretty’. The default value istext.
- Syntax
- Example
- Environment Variable
--log.format=<value>log.color
Color the log output if in terminal mode. The default value isfalse.
- Syntax
- Example
- Environment Variable
--log.color=<value>log.pid
Show PID in the log.- Syntax
- Example
- Environment Variable
--log.pid=<value>metrics.enabled
Enable the metrics server. The default value isfalse.
- Syntax
- Example
- Environment Variable
--metrics.enabled=<value>Miscellaneous
active-sequencer-check-duration
The duration between checks to determine the active sequencer endpoint. The default value is2m0s.
- Syntax
- Example
- Environment Variable
--active-sequencer-check-duration=<value>pprof.addr
pprof listening address. The default value is0.0.0.0.
- Syntax
- Example
- Environment Variable
--pprof.addr=<value>pprof.enabled
Enable the pprof server. The default value isfalse.
- Syntax
- Example
- Environment Variable
--pprof.enabled=<value>pprof.path
pprof file path. If it is a directory, the path is{dir}/{profileType}.prof.
- Syntax
- Example
- Environment Variable
--pprof.path=<value>pprof.port
pprof listening port. The default value is6060.
- Syntax
- Example
- Environment Variable
--pprof.port=<value>pprof.type
pprof profile type. One of cpu, heap, goroutine, threadcreate, block, mutex, allocs.- Syntax
- Example
- Environment Variable
--pprof.type=<value>help
Show help. The default value is false.- Syntax
- Example
- Environment Variable
--help=<value>version
Print the version. The default value is false.- Syntax
- Example
- Environment Variable
--version=<value>