Skip to main content

Running a Tracing Node

Horizen 2 provides some of the Ethereum Geth non-standard RPC debug methods. To use the supported RPC methods, it is needed to run a tracing node, which is slightly different than running a normal node. The main difference is that a tracing node uses a specific runtime with the support needed to execute the RPC methods.

Compiling a Tracing Runtime

For compiling a tracing runtime, you need to install Rust toolchain. Instructions can be found here.

To build the runtime from the source code, clone the Horizen 2 repository (that can be found here) and run the following commands from the root of the project:

git checkout <latest tagged release>
cargo build -p horizen-runtime --release --features async-backing,evm-tracing
cp ./target/release/wbuild/horizen-runtime/horizen_runtime.wasm <_trace_runtime_dir_>

You will also need a normal node for running the tracing runtime:

cargo build --release 

Running a Tracing Node

Run a tracing node with the following command:

./target/release/horizen-node --chain <horizen_chain_spec.json_> --ethapi=debug --wasm-runtime-overrides=<_trace_runtime_dir_>