Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Configuration

GasHammer uses TOML configuration files for the hive and edge processes. Scenario definitions use YAML (see Scenario Authoring).

Hive Configuration

The hive reads its configuration from hive.toml:

[server]
bind_address = "0.0.0.0"
rest_port = 8080
grpc_port = 9090

[storage]
data_dir = "/var/lib/gashammer"
parquet_rotation_size_mb = 256
parquet_rotation_interval_secs = 3600

[telemetry]
prometheus_port = 9091

[logging]
level = "info"
format = "json"

Server Section

FieldTypeDefaultDescription
bind_addressstring"0.0.0.0"Network interface to bind
rest_portu168080REST API port
grpc_portu169090gRPC port for edge communication

Storage Section

FieldTypeDefaultDescription
data_dirpath"/var/lib/gashammer"Directory for telemetry data and reports
parquet_rotation_size_mbu64256Rotate Parquet files at this size
parquet_rotation_interval_secsu643600Rotate Parquet files at this interval

Edge Configuration

Each edge reads its configuration from edge.toml:

[edge]
name = "edge-us-east-1"

[hive]
address = "hive.internal:9090"

[nitro]
sequencer_rpc = "http://sequencer:8547"
gateway_rpc = "http://gateway:8547"
feed_relay = "ws://feed-relay:9642"

[nitro.rpc]
timeout_ms = 5000
max_retries = 3
connection_pool_size = 16

[accounts]
mnemonic = "test test test test test test test test test test test junk"
count = 100
derivation_base = "m/44'/60'/0'/0'/0x4748"

[telemetry]
buffer_size = 65536
batch_size = 1024
flush_interval_ms = 1000
prometheus_port = 9091

[logging]
level = "info"
format = "json"

Nitro Section

FieldTypeDefaultDescription
sequencer_rpcURLrequiredNitro sequencer JSON-RPC endpoint
gateway_rpcURLrequiredNitro gateway JSON-RPC endpoint
feed_relayURLrequiredSequencer feed relay WebSocket URL
timeout_msu645000RPC request timeout
max_retriesu323Max retries on transient errors
connection_pool_sizeu3216HTTP connection pool size

Accounts Section

FieldTypeDefaultDescription
mnemonicstringrequiredHD wallet mnemonic for test accounts
countu32100Number of accounts to derive
derivation_basestring"m/44'/60'/0'/0'/0x4748"HD derivation path (includes GasHammer DNA marker 0x4748)

Environment Variables

Configuration values can be overridden with environment variables using the GASHAMMER_ prefix:

GASHAMMER_NITRO_SEQUENCER_RPC=http://localhost:8547
GASHAMMER_HIVE_ADDRESS=hive.internal:9090
GASHAMMER_LOG_LEVEL=debug