Troubleshooting
Logs
If you'd like to run the node with verbose logs, you may add the following arguments during initial setup. Adjust the target for the desired logging level (debug | error | info| trace | warn):
RUST_LOG=runtime=debug ./target/release/<YOUR-NODE-TEMPLATE> --dev
Refer substrate doc (opens in a new tab) for more details
P2P Ports Not Open
If you don't see an "Imported" message (without the [Relaychain] tag), check the P2P port configuration. Ensure the P2P port is open to incoming traffic.
In Sync
Both chains must be in sync at all times. Look for "Imported" or "Idle" messages and ensure you have connected peers.
Genesis Mismatching
If you notice log messages like:
DATE [Relaychain] Bootnode with peer id ID is on a different chain (our genesis: 0x3f5... theirs: 0x45j...)
You may be running an older version and need to upgrade.
Troubleshooting for Apple Silicon users
Homebrew and PATH Configuration
If you haven't installed Homebrew: https://brew.sh/ (opens in a new tab)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
Make sure Homebrew is up-to-date, install openssl
brew update
brew install openssl
After installation, ensure you've added /opt/homebrew/bin to your PATH:
echo 'export PATH=/opt/homebrew/bin:$PATH' >> ~/.bash_profile
Dependencies
- GMP: Ensure the gmp dependency is correctly installed.
brew install gmp
- If you're still facing an issue with gmp, adjust your path to the gmp lib:
cargo clean
export LIBRARY_PATH=$LIBRARY_PATH:$(brew --prefix)/lib:$(brew --prefix)/opt/gmp/lib
Add the above export to your bash_profile as well.
- Ensure the Protobuf dependency is correctly installed:
brew install protobuf