Skip to content

gkozyryatskyy/evm-history

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

evm-history

evm-history

Configuration

LOCAL: Building the application

# build with local profile, without tests, with docker image build
# (!!!) Use java 21 to build, because lombok do not support java 23+
mvn clean install
# with tests, test using dev services, so no need to run any infra
mvn clean install -DskipTests=false

LOCAL: Running the application

# run infra
cd {project-root}/src/main/docker
docker compose up -d 
# run project from docker
docker compose -f project.yml up -d
# for runing project from IDE, just run io.evm.history.Main.main(String... args)

LOCAL: Dashboard

# Open dashboard
http://localhost:8080/

LOCAL: Stop the application

# stop the app from docker
cd {project-root}/src/main/docker
docker compose -f project.yml down 
# stop the infra
docker compose down
# if you want the volumes also to be deleted
docker compose down -v

HTTP routes

Name URL Description
Dashboard localhost:8080 Dashboard endpoint
Healthcheck localhost:8080/q/health Healthcheck endpoint
Metrics localhost:8080/q/metrics Metrics endpoint. Return metrics in 'Prometheus' format

Results

  • top 10 contracts called in the transactions that make up a blocks (by amount of calls) Screenshot 1.png
  • For each top 10 contract calculate
    • the original bytecode size
    • the maximum gas amount provided by users in calls to the contract Screenshot 2.png
    • the top 3 callers of each contract and how many times they called it (click on any contract and whole dashboard will be filtered by this contract) Screenshot 3.png

INFO

TODO

  • Switch contracts cache to Redis or DB calls
  • Track other contract interactions from logs
  • Get ABI and add tx ABI parsing
  • Try to add contract code decompilation if there is no ABI available

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors