OST Block Scanner parses Ethereum-based chains and stores data in DynamoDB. It supports multiple chains, as well.
npm install @ostdotcom/ost-block-scanner --save
- nodejs >= 8.0.0
- Geth >=1.8.17
- Memcached
- AWS DynamoDB Service OR DynamoDBLocal.jar
- Java >= 6.0, if using DynamoDBLocal.jar
- DB Browser for SQLite optionally to browse DynamoDB
# NOTE: Make sure to change DYNAMODB_PATH
export DYNAMODB_PATH=~/dynamodb_local_latest
java -Djava.library.path=$DYNAMODB_PATH/DynamoDBLocal_lib/ -jar $DYNAMODB_PATH/DynamoDBLocal.jar -sharedDb -dbPath $DYNAMODB_PATH/
Refer to config.json.example to create a new configuration file.
Set CONFIG_STRATEGY_PATH
environment variable to the path of the configuration file just created.
node ./node_modules/@ostdotcom/ost-block-scanner/tools/initialSetup.js --configFile $CONFIG_STRATEGY_PATH
- Mandatory parameters:
chainId
,networkId
,configFile
- Optional parameters (each defaults to 1):
blockShardCount
: number of block shards to be createdeconomyAddressShardCount
: number of economy address shards to be createdtransactionShardCount
: number of transaction shards to be created
# NOTE:
# Make sure chain configuration is present in config file before starting this step.
# Optional parameters are used to create entity-specific sharded tables.
# By default only one shard is created for each entity.
node ./node_modules/@ostdotcom/ost-block-scanner/tools/addChain.js --configFile $CONFIG_STRATEGY_PATH --chainId 2000 --networkId 1 --blockShardCount 2 --economyAddressShardCount 2 --transactionShardCount 2
- Additional block specific data shards:
node ./node_modules/@ostdotcom/ost-block-scanner/tools/createShards/byBlock.js --configFile $CONFIG_STRATEGY_PATH --chainId 2000 --shardNumber 1
- Additional economy user(s) specific data shards:
node ./node_modules/@ostdotcom/ost-block-scanner/tools/createShards/byEconomyAddress.js --configFile $CONFIG_STRATEGY_PATH --chainId 2000 --shardNumber 1
- Additional transaction specific data shards:
node ./node_modules/@ostdotcom/ost-block-scanner/tools/createShards/byTransaction.js --configFile $CONFIG_STRATEGY_PATH --chainId 2000 --shardNumber 1
- Mandatory parameters:
chainId
,configFile
- Optional parameters:
startBlockNumber
,endBlockNumber
node ./node_modules/@ostdotcom/ost-block-scanner/executables/blockScanner.js --configFile $CONFIG_STRATEGY_PATH --chainId 2000 --startBlockNumber 0 --endBlockNumber 100