Ping validator
Running Pinger allows the validator to share leader data transmission times with the network.
Why Use Pinger?
When an RPC receives a transaction message to be included in a block, it must forward the message to the leader. Fast data transmission to the leader is crucial for network efficiency and consensus speed.

Monitoring your validator's ping times ensures it meets leader schedule performance requirements.
Pinger Dashboard

Ping times measure how long it takes for your validator to communicate with the current leader. Since the leader changes every four slots (1.6s), ping time variance (typically 500–3000ms) depends on the distance to the constantly switching leader.
Installation
Configure Keypair
solana config set -k ~/.config/solana/id.jsonEnsure the keypair has funds, as a transaction is sent with each ping.
Open Firewall Port (If Enabled)
Enable UFW if it is not already enabled:
sudo ufw enableAllow traffic on port 3334:
sudo ufw allow 3334/tcpInstall and Run Pinger
# Update and install dependencies
sudo apt update
sudo apt install -y nodejs jq
# Clone the Pinger repository
git clone https://github.com/x1-labs/x1-pinger/
cd x1-pinger
npm install
# Set up the system service
cp system/x1-pinger.service /etc/systemd/system/x1-pinger.service
# If installed in a different directory, update the service file accordingly
# nano /etc/systemd/system/x1-pinger.service
# Enable and start the service
sudo systemctl enable --now x1-pingerVerify Installation
Check the service status:
sudo systemctl status x1-pingerView logs to ensure correct operation:
journalctl -u x1-pinger -f
Once running, your validator will continuously measure and share leader ping times.
Managing Pinger
Stop the Pinger
sudo systemctl stop x1-pingerRetrieve Ping Metrics
curl http://localhost:3334/ping_times | jq
You can also check your ping times on x1val.online:
Last updated

