Dockerized script to monitor the Ethereum network for most active sender addresses
Go to file
2024-07-15 19:54:31 +03:00
data feat: dockerfile and deployment scripts 2024-07-07 17:18:35 +03:00
scripts refactor: healthcheck and deployment script adjustments 2024-07-11 20:12:56 +03:00
src fix: fix async operations' safety timeouts 2024-07-15 19:54:31 +03:00
.gitignore feat: proper periodic json export & cfg parsing 2024-07-07 15:17:15 +03:00
Dockerfile feat: dockerfile and deployment scripts 2024-07-07 17:18:35 +03:00
LICENSE Initial commit 2024-06-30 15:44:23 +00:00
main.py feat: optional export task and expandable config parsing with named tuples 2024-07-15 19:53:35 +03:00
README.md docs: fix the deployment script name 2024-07-12 23:11:17 +03:00
requirements.txt feat: proper periodic json export & cfg parsing 2024-07-07 15:17:15 +03:00

Ethereum network sender address mapper

Script that, once deployed in a Docker container, monitors a live feed of the Ethereum network via a WebSocket connection, stores the sender addresses with transaction counts, and creates statistics of the most active addresses.

Development

Most critically MODE=development should be specified, as it sets the logging level from INFO to DEBUG. Low EXPORT_INTERVAL should be used for testing the export functionality (obviously).

mkvirtualenv chainmapper # OR 'workon chainmapper'
pip3 install -r requirements.txt
touch .env && echo -e "MODE=\"development\"\nEXPORT_INTERVAL=\"60\"" > .env # 60 seconds export period for testing

Usage

The included deploy.sh shellscript should be used for any kind of (development or production) deployment. It builds a new Docker image without caching, prompts for removal of any possible conflicting containers, and finally deploys the newly built image as a container with the data/ local directory mounted as a volume.

chmod +x ./scripts/deploy.sh
./scripts/deploy.sh