EthScope papar link: https://arxiv.org/abs/2005.08278
This is the formal version of the EthScope system. The trial version was released in here.
Binarys:
elastic-schema: Create the database schema discussed in paper.
replay: Replay Engine with instrumentation framework.
geth-elastic: Customized Ethereum client Geth, which will collect structured data and store them into Elasticsearch when executing transactions.
docker run --name es -it swaywu/ethscope:<tag>
$ ./bin/elastic-schema -h
Usage of ./elastic-schema:
-ipsfile string
Enter the file path storing the ip list (default: 127.0.0.1).
$ ./bin/elastic-schema ./cluster-hosts.json
Collecting internal transactions and fine-grained historical states require us to re-execute all transactions in sequence. In order to avoid network latency and temporary fork, we always use the subcommand import provided by Geth to import blocks from genesis one offline. This process is time-consuming, but once for all.
geth-elastic import ./exported-blocks/0_100000
Another subcommand export provided by Geth export blocks into a specified file. For example:
geth --datadir ~/.ethereum/ export ./0_100000 0 100000
Running the above command requires that the user has synchronized the first 100000 blocks as a full node. The synchronization command shows in here:
geth --datadir ~/.ethereum --syncmode full
The newest official geth can be found in https://github.com/ethereum/go-ethereum.
The remaining usage of EthScope is discussed in here.
Content type
Image
Digest
Size
93.3 MB
Last updated
over 6 years ago
docker pull swaywu/ethscope