Heartbeat plugin to coordinate BP node status and metadata on-chain.
The goal is to show that a standby or active BP is ready for block production in terms version, blacklist sync, configuration, etc.
This plugin is intended for both standby and active BPs. it is intended to run on the block producing node.
Contract deployed at: eosheartbeat (on mainnet and on the jungle testnet)
Monitor: http://heartbeat.liquideos.com/
Repository for monitor frontend and contract: https://github.com/bancorprotocol/eos-producer-heartbeat
Make sure you allocate enough CPU/NET to your account (100 EOS each is enough). so you are still able to perform the daily claim
Contains version, head_block_num
actor-blacklist hash
automatic submission to https://github.com/EOSLaoMao/theblacklist
Total system ram, state_db_size, Processor type, VM or not, etc.
- Works on any EOSIO node that runs v1.5.0 and up. (see older tags for older versions)
- run
cd <eosio-source-dir>
cd plugins
git clone https://github.com/LiquidEOS/eos-producer-heartbeat-plugin.git producer_heartbeat_plugin
cd producer_heartbeat_plugin
git checkout tags/v1.5.01
cd ../..
git apply plugins/producer_heartbeat_plugin/install.patch
./eosio_build.sh -s "EOS"
sudo ./eosio_install.sh
- Build and install nodeos as usual.
Use a dedicated key for this action. This step is not mandatory (especially on testnets), you can use your active key instead and set heartbeat-permission = active
cleos create key # HEARTBEAT_PRIVATE_KEY and HEARTBEAT_PUB_KEY
cleos set account permission PRODUCERACCT heartbeat '{"threshold":1,"keys":[{"key":"HEARTBEAT_PUB_KEY","weight":1}]}' "active" -p PRODUCERACCT@active
cleos set action permission PRODUCERACCT eosheartbeat heartbeat heartbeat
cleos set action permission PRODUCERACCT theblacklist sethash heartbeat
plugin = eosio::producer_heartbeat_plugin
heartbeat-period = 1500
heartbeat-signature-provider = HEARTBEAT_PUB_KEY=KEY:HEARTBEAT_PRIVATE_KEY
heartbeat-contract = eosheartbeat
heartbeat-permission = heartbeat
heartbeat-oncall = telegram:johndoe
Set heartbeat-oncall to your oncall contacts
- You should see an entry for producer_heartbeat_plugin in the logs when you restart nodeos.
- Any suggestions and pull requests are welcome :)