Usefull commands for Blit Chain
🔑 Key management
👛
Change wallet in the commands to your own wallet name.
Add new key
blitd keys add wallet
Recover existing key
blitd keys add wallet --recover
List all keys
blitd keys list
Delete key
blitd keys delete wallet
Export key to the file
blitd keys export wallet
Import key from the file
blitd keys import wallet wallet.backup
Query wallet balance
blitd q bank balances $( blitd keys show wallet -a)
🧙 Validator management
🙋♀️
Make sure to change values for moniker, identity, details website to your own values.
Edit existing validator
Edit the validator.json. Then execute the command.
--moniker "YOUR_MONIKER_NAME" \
--identity "YOUR_KEYBASE_ID" \
--details "YOUR_DETAILS" \
--website "YOUR_WEBSITE_URL" \
--chain-id blit-testnet-1 \
--commission-rate 0.05 \
--from wallet
blitd tx staking edit-validator /path/to/validator.json --gas-adjustment 1.5 --gas auto
--gas-prices 0ublit -y
Unjail validator
blitd tx slashing unjail --from wallet --chain-id blit-testnet-1 --gas-adjustment 1.5 --gas auto
--gas-prices 0ublit -y
Jail reason
blitd query slashing signing-info $( blitd tendermint show-validator)
List all active validators
blitd q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_BONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " \t " + .description.moniker' | sort -gr | nl
List all inactive validators
blitd q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_UNBONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " \t " + .description.moniker' | sort -gr | nl
View validator details
blitd q staking validator $( blitd keys show wallet --bech val -a)
🪙 Token management
Withdraw rewards from all validators
blitd tx distribution withdraw-all-rewards --from wallet --chain-id blit-testnet-1 --gas-adjustment 1.5 --gas auto --gas-prices 0ublit -y
Withdraw commission and rewards from your validator
blitd tx distribution withdraw-rewards $( blitd keys show wallet --bech val -a) --commission --from wallet --chain-id blit-testnet-1 --gas-adjustment 1.5 --gas auto --gas-prices 0ublit -y
Delegate tokens to yourself
blitd tx staking delegate $( blitd keys show wallet --bech val -a) 1000000000000ublit --from wallet --chain-id blit-testnet-1 --gas-adjustment 1.5 --gas auto --gas-prices 0ublit -y
Delegate tokens to validator
blitd tx staking delegate <TO_VALOPER_ADDRESS> 1000000000000ublit --from wallet --chain-id blit-testnet-1 --gas-adjustment 1.5 --gas auto --gas-prices 0ublit -y
Redelegate tokens to another validator
blitd tx staking redelegate $( blitd keys show wallet --bech val -a) <TO_VALOPER_ADDRESS> 1000000$ublit --from wallet --chain-id blit-testnet-1 --gas-adjustment 1.5 --gas auto --gas-prices 0ublit -y
Unbond tokens from your validator
blitd tx staking unbond $( blitd keys show wallet --bech val -a) 1000000$ublit --from wallet --chain-id blit-testnet-1 --gas-adjustment 1.5 --gas auto --gas-prices 0ublit -y
Send tokens to the wallet
blitd tx bank send wallet <TO_WALLET_ADDRESS> 1000000$ublit --from wallet --chain-id blit-testnet-1 --gas-adjustment 1.5 --gas auto --gas-prices 0ublit -y
🏛️ Governance
List all proposals
blitd query gov proposals
View proposal by id
blitd query gov proposal 1
Vote 'Yes'
blitd tx gov vote 1 yes --from wallet --chain-id blit-testnet-1 --gas-adjustment 1.5 --gas auto --gas-prices 0ublit -y
Vote 'No'
blitd tx gov vote 1 no --from wallet --chain-id blit-testnet-1 --gas-adjustment 1.5 --gas auto --gas-prices 0ublit -y
Vote 'Abstain'
blitd tx gov vote 1 abstain --from wallet --chain-id blit-testnet-1 --gas-adjustment 1.5 --gas auto --gas-prices 0ublit -y
Vote 'NoWithVeto'
blitd tx gov vote 1 NoWithVeto --from wallet --chain-id blit-testnet-1 --gas-adjustment 1.5 --gas auto --gas-prices 0ublit -y
⚡️ Utility
Update Indexer
Disable indexer
sed -i -e 's|^indexer *=.*|indexer = "null"|' $HOME/.blit/config/config.toml
Enable indexer
sed -i -e 's|^indexer *=.*|indexer = "kv"|' $HOME/.blit/config/config.toml
Update pruning
sed -i \
-e 's|^pruning *=.*|pruning = "custom"|' \
-e 's|^pruning-keep-recent *=.*|pruning-keep-recent = "2000"|' \
-e 's|^pruning-keep-every *=.*|pruning-keep-every = "0"|' \
-e 's|^pruning-interval *=.*|pruning-interval = "100"|' \
$HOME/.blit/config/app.toml
🔧 Maintenance
Get validator info
blitd status 2>&1 | jq .ValidatorInfo
Get sync info
blitd status 2>&1 | jq .SyncInfo
Enable prometheus
sed -i -e "s/prometheus = false/prometheus = true/" $HOME/.blit/config/config.toml
Reset chain data
blitd tendermint unsafe-reset-all --keep-addr-book --home $HOME/.blit --keep-addr-book
Remove node
☢️
Make sure you have backed up your priv_validator_key.json!
cd $HOME
sudo systemctl stop blitd
sudo systemctl disable blitd
sudo rm /etc/systemd/system/blitd.service
sudo systemctl daemon-reload
rm -f $(which blitd)
rm -rf $HOME/.blit
rm -rf $HOME/blitchain
⚙️ Service Management
Reload service configuration
sudo systemctl daemon-reload
Enable service
sudo systemctl enable blitd
Disable service
sudo systemctl disable blitd
Start service
sudo systemctl start blitd
Stop service
sudo systemctl stop blitd
Restart service
sudo systemctl restart blitd
Check service status
sudo systemctl status blitd
Check service logs
sudo journalctl -u blitd -f --no-hostname -o cat