- Telegram-Based Block Height Monitoring tool for
fullnodesandvalidatornodes- Fetches the latest block height from your Monad node
- Sends it as a Telegram message to dedicated channel
- Checks the node's sync status automatically
- No dashboards. No browser needed.
- Just a clean, systemd or cron-backed heartbeat notification from your node — straight to Telegram.
-
Download the repository
git clone https://github.com/cosmostation/monad-sync-monitoring.git -
Inside the directory build the binary
# build the binary cd monad-sync-monitoring && make build -
Set the
.envfilecd monad-sync-monitoring mv .env.sample .env -
Update the
.envfile with Telegram Bot Token and Telegram Private Chat IDvim .env TELEGRAM_TOKEN=804xxxx:AAEymFxxxxxxxxxxxxxxxxxxxxxxxxx TELEGRAM_CHAT_ID=-38xxxxxx RPC_PORT=8080 # default- Check the guide on how to get the Telegram Bot Token
- And how to acuqire the Telegram Chat ID
-
Create
monad-monitoring.servicefilesudo vim monad-monitoring.service [Unit] Description=Monad Sync Health Checker After=network.target [Service] ExecStart=/home/monad/monad-sync-monitoring/monad-monitoring WorkingDirectory=/home/monad/monad-sync-monitoring User=monad Restart=always RestartSec=5 EnvironmentFile=/home/monad/monad-sync-monitoring/.env [Install] WantedBy=multi-user.target -
Service reload and start
sudo systemctl daemon-reload sudo systemctl enable monad-monitoring.service sudo systemctl start monad-monitoring.service
-
The following example screenshot shows a Telegram bot called
Monad Status Botactively monitoring and reporting the status of a Monad node. The messages are timestamped and use emojis to indicate different statuses. -
📊Summary of Bot Behavior:
-
✅UP
- Message: Monad RPC is back UP! Current height:
<height> - Emoji: ✅
- Indicates the node is responsive again.
- Message: Monad RPC is back UP! Current height:
-
⚠️ Stuck- Message: Monad node seems stuck at height:
<height> - Emoji:
⚠️ - Indicates the node is reachable but not advancing in block height.
- Message: Monad node seems stuck at height:
-
❌ DOWN
- Message: Monad RPC is DOWN! Unable to connect to port.
- Emoji: 🛑 (red square with X)
- Indicates the node is unreachable—possibly network or process failure.
-
Medium article - Telegram-Based RPC Sync Monitoring for Monad Nodes
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
THE POSSIBILITY OF SUCH DAMAGE.
