- concurrent scraping of multiple oracle contracts
- the data is saved to a local TimescaleDB instance
- packaged in a Docker container
- lint go files
- log the scraping events
- docker
Copy the file env.example
to .env
, in the root directory, and then fill it.
[
{
"contract-address": "0xa93546947f3015c986695750b8bbea8e26d65856",
"contract-abi": "oracle-v2",
"chain-id": "1",
"node-url": "https://eth-mainnet.g.alchemy.com/v2/",
"creation-block": 0,
"latest-scraped-block": 0
}
]
./build/oracle-monitoring --targets oracles.json
go build -o build/
docker for both:
- the daemon
- timescaledb
DB_CONNECTION_STRING='postgres://user:password@localhost:5432/dbname'
psql -h <database_host> -U <database_user> -f scripts/create_database.sql
for now, it uses the same ABI for all the oracles
might add a property in the config file with the path to the matching ABI