Docs
Ecosystem Roles
Validator
Troubleshooting

Logs

If you would like to run the node with verbose logs you may add the following arguments during initial setup. You may change the target to include debug | error | info| trace | warn.

-ldkg=debug \
-ldkg_metadata=debug \
-lruntime::offchain=debug \
-ldkg_proposal_handler=debug \
-ldkg_proposals=debug

Troubleshooting

P2P Ports Not Open

If you don't see an Imported message (without the [Relaychain] tag), you need to check the P2P port configuration. P2P port must be open to incoming traffic.

In Sync

Both chains must be in sync at all times, and you should see either Imported or Idle messages and have connected peers.

Genesis Mismatching

If you notice similar log messages as below:

DATE [Relaychain] Bootnode with peer id `ID` is on a different
chain (our genesis: 0x3f5... theirs: 0x45j...)

This typically means that you are running an older version and will need to upgrade.

Troubleshooting for Apple Silicon users

Install Homebrew if you have not already. You can check if you have it installed with the following command:

brew help

If you do not have it installed open the Terminal application and execute the following commands:

# Install Homebrew if necessary https://brew.sh/
/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

Note: Native ARM Homebrew installations are only going to be supported at /opt/homebrew. After Homebrew installs, make sure to add /opt/homebrew/bin to your PATH.

echo 'export PATH=/opt/homebrew/bin:$PATH' >> ~/.bash_profile

An example bash_profile for reference may look like the following:

export PATH=/opt/homebrew/bin:$PATH
export PATH=/opt/homebrew/opt/llvm/bin:$PATH
export CC=/opt/homebrew/opt/llvm/bin/clang
export AR=/opt/homebrew/opt/llvm/bin/llvm-ar
export LDFLAGS=-L/opt/homebrew/opt/llvm/lib
export CPPFLAGS=-I/opt/homebrew/opt/llvm/include
export RUSTFLAGS='-L /opt/homebrew/lib'

In order to build dkg-substrate in --release mode using aarch64-apple-darwin Rust toolchain you need to set the following environment variables:

echo 'export RUSTFLAGS="-L /opt/homebrew/lib"' >> ~/.bash_profile

Ensure gmp dependency is installed correctly.

brew install gmp

If you are still receiving an issue with gmp, you may need to adjust your path to the gmp lib. Below is a suggestive fix, but paths are machine / environment specific.

Run:

cargo clean

Then:

export LIBRARY_PATH=$LIBRARY_PATH:$(brew --prefix)/lib:$(brew --prefix)/opt/gmp/lib

This should be added to your bash_profile as well.

Ensure protobuf dependency is installed correctly.

brew install protobuf