Tenderduty
Last updated
Was this helpful?
Last updated
Was this helpful?
Tenderduty is a monitoring tool specifically designed for validators in Tendermint-based blockchains, such as Cosmos, Osmosis, and other related networks. It helps track validator performance, ensuring they remain online, properly sign blocks, and avoid slashing or jailing. Tenderduty allows validators to monitor their node's health and receive alerts in case of issues like downtime, missed blocks, or risks of slashing.
Validator uptime and block signing performance monitoring.
Alerts for missed blocks or downtime (via email, Telegram, Discord, Slack, or PagerDuty).
Prevention of slashing risks by identifying potential issues early.
A web interface for viewing real-time statistics and logs.
Tenderduty is particularly useful for validators who need to ensure their node remains in good standing within the network. Downtime or misbehavior can result in penalties, including slashing and jailing.
The official Tenderduty repository is archived, but it is still a useful monitoring tool for Cosmos validators now and in the future.
In this tutorial, I recommend using Docker to install and configure Tenderduty for monitoring a validator on a Tendermint-based blockchain.
Operating System: Linux (e.g., Ubuntu)
Docker: Installed
Validator Node: A running Tendermint-based node to monitor
Notification Service: Tenderduty supports Discord, Telegram, Slack, and PagerDuty; you need a webhook or API key for notifications.
docker-compose.yml
FileFirst, create a directory for Tenderduty and navigate into it:
Then, add the following Docker Compose configuration to docker-compose.yml
. This will set up Tenderduty with a web dashboard and Prometheus exporter.
If needed, you can modify the exposed ports (8888
for the dashboard and 28686
for Prometheus).
Tenderduty requires a configuration file (config.yml
) to specify the networks and validators to monitor.
Explanation:
Alerts are enabled via Discord.
Two nodes are monitored:
localhost:26657
(your own validator node) – raises alerts if down.
rpc.orai.io
(fallback public RPC) – does not raise alerts.
For a full example configuration, check the official sample.
After setting up the configuration file, start Tenderduty:
Once running, visit http://localhost:8888
in your browser to view the monitoring dashboard.
Tenderduty will now:
Monitor your validator’s status in real-time.
Send alerts (via Discord, Telegram, Slack, etc.) if the node goes down or misses blocks.
Provide logs and metrics accessible via the web dashboard.
To check the logs:
Congratulations! 🎉 You have successfully set up Tenderduty to monitor your validator on a Tendermint-based blockchain. With Tenderduty running, you can stay informed about validator health, avoid slashing risks, and react quickly to potential issues. 🚀
For further customization, refer to the official documentation (though archived): 👉 Tenderduty GitHub Repository