Useful Commands
Key management 🔑
Add new key
symphonyd keys add wallet
Recover existing key
symphonyd keys add wallet --recover
List all keys
symphonyd keys list
Delete key
symphonyd keys delete wallet
Export key to the file
symphonyd keys export wallet
Import key from the file
symphonyd keys import wallet wallet.backup
Query wallet balance
symphonyd q bank balances $(symphonyd keys show wallet -a)
Validator management 👷
Create new validator
symphonyd tx staking create-validator --amount 1000000note --pubkey $(symphonyd tendermint show-validator) --moniker "YOUR_MONIKER_NAME" --identity "YOUR_KEYBASE_ID" --details "YOUR_DETAILS" --website "YOUR_WEBSITE_URL" --chain-id symphony-testnet-2 --commission-rate 0.05 --commission-max-rate 0.20 --commission-max-change-rate 0.01 --min-self-delegation 1 --from wallet --gas-adjustment 1.4 --gas auto --gas-prices 0.025note -y
Edit existing validator
symphonyd tx staking edit-validator --new-moniker "YOUR_MONIKER_NAME" --identity "YOUR_KEYBASE_ID" --details "YOUR_DETAILS" --website "YOUR_WEBSITE_URL" --chain-id symphony-testnet-2 --commission-rate 0.05 --from wallet --gas-adjustment 1.4 --gas auto --gas-prices 0.025note -y
Unjail validator
symphonyd tx slashing unjail --from wallet --chain-id symphony-testnet-2 --gas-adjustment 1.4 --gas auto --gas-prices 0.025note -y
Jail reason
symphonyd query slashing signing-info $(symphonyd tendermint show-validator)
List all active validators
symphonyd q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_BONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " " + .description.moniker' | sort -gr | nl
List all inactive validators
symphonyd q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_UNBONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " " + .description.moniker' | sort -gr | nl
View validator details
symphonyd q staking validator $(symphonyd keys show wallet --bech val -a)
Token management 💲
Withdraw rewards from all validators
symphonyd tx distribution withdraw-all-rewards --from wallet --chain-id symphony-testnet-2 --gas-adjustment 1.4 --gas auto --gas-prices 0.025note -y
Withdraw commission and rewards from your validator
symphonyd tx distribution withdraw-rewards $(symphonyd keys show wallet --bech val -a) --commission --from wallet --chain-id symphony-testnet-2 --gas-adjustment 1.4 --gas auto --gas-prices 0.025note -y
Delegate tokens to yourself
symphonyd tx staking delegate $(symphonyd keys show wallet --bech val -a) 1000000note --from wallet --chain-id symphony-testnet-2 --gas-adjustment 1.4 --gas auto --gas-prices 0.025note -y
Delegate tokens to validator
symphonyd tx staking delegate TO_VALOPER_ADDRESS 1000000note --from wallet --chain-id symphony-testnet-2 --gas-adjustment 1.4 --gas auto --gas-prices 0.025note -y
Redelegate tokens to another validator
symphonyd tx staking redelegate $(symphonyd keys show wallet --bech val -a) TO_VALOPER_ADDRESS 1000000note --from wallet --chain-id symphony-testnet-2 --gas-adjustment 1.4 --gas auto --gas-prices 0.025note -y
Unbond tokens from your validator
symphonyd tx staking unbond $(symphonyd keys show wallet --bech val -a) 1000000note --from wallet --chain-id symphony-testnet-2 --gas-adjustment 1.4 --gas auto --gas-prices 0.025note -y
Send tokens to the wallet
symphonyd tx bank send wallet TO_WALLET_ADDRESS 1000000note --from wallet --chain-id symphony-testnet-2 --gas-adjustment 1.4 --gas auto --gas-prices 0.025note -y
Governance 🗳
List all proposals
symphonyd query gov proposals
View proposal by id
symphonyd query gov proposal 1
Vote 'Yes'
symphonyd tx gov vote 1 yes --from wallet --chain-id symphony-testnet-2 --gas-adjustment 1.4 --gas auto --gas-prices 0.025note -y
Vote 'No'
symphonyd tx gov vote 1 no --from wallet --chain-id symphony-testnet-2 --gas-adjustment 1.4 --gas auto --gas-prices 0.025note -y
Vote 'Abstain'
symphonyd tx gov vote 1 abstain --from wallet --chain-id symphony-testnet-2 --gas-adjustment 1.4 --gas auto --gas-prices 0.025note -y
Vote 'NoWithVeto'
symphonyd tx gov vote 1 NoWithVeto --from wallet --chain-id symphony-testnet-2 --gas-adjustment 1.4 --gas auto --gas-prices 0.025note -y
Utility ⚡️
Update Indexer
sed -i -e 's|^indexer *=.*|indexer = "null"|' $HOME/.symphonyd/config/config.toml
Update pruning
sed -i -e 's|^pruning *=.*|pruning = "custom"|' -e 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|' -e 's|^pruning-keep-every *=.*|pruning-keep-every = "0"|' -e 's|^pruning-interval *=.*|pruning-interval = "19"|' $HOME/.symphonyd/config/app.toml
Maintenance 🚨
Get validator info
symphonyd status 2>&1 | jq .ValidatorInfo
Get sync info
symphonyd status 2>&1 | jq .SyncInfo
Get node peer
echo $(symphonyd tendermint show-node-id)'@'$(curl -s ifconfig.me)':'$(cat $HOME/.symphonyd/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')
Get live peers
curl -sS http://localhost:27657/net_info | jq -r '.result.peers[] | "(.node_info.id)@(.remote_ip):(.node_info.listen_addr)"' | awk -F ':' '{print $1":"$(NF)}'
Set minimum gas price
sed -i -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = "0.025note"/" $HOME/.symphonyd/config/app.toml
Enable prometheus
sed -i -e "s/prometheus = false/prometheus = true/" $HOME/.symphonyd/config/config.toml
Reset chain data
symphonyd tendermint unsafe-reset-all --home $HOME/.symphonyd --keep-addr-book
Remove node
cd $HOME
sudo systemctl stop symphonyd
sudo systemctl disable symphonyd
sudo rm /etc/systemd/system/symphonyd.service
sudo systemctl daemon-reload
rm -f $(which symphonyd)
rm -rf $HOME/.symphonyd
rm -rf $HOME/symphony
Service Management ⚙️
Reload service configuration
sudo systemctl daemon-reload
Enable service
sudo systemctl enable symphonyd
Disable service
sudo systemctl disable symphonyd
Start service
sudo systemctl start symphonyd
Stop service
sudo systemctl stop symphonyd
Restart service
sudo systemctl restart symphonyd
Check service status
sudo systemctl status symphonyd
Check service logs
sudo journalctl -u symphonyd -f --no-hostname -o cat
Last updated