Health endpoints
The node exposes CometBFT RPC on port 26657 (localhost only):
| Endpoint | Description |
|---|
http://localhost:26657/health | Returns {} if running |
http://localhost:26657/status | Sync status, validator info, latest block |
http://localhost:26657/net_info | Peer count and connections |
autheod status | jq '.SyncInfo.catching_up'
autheod status | jq '.SyncInfo.latest_block_height'
Enable Prometheus metrics
Edit config/config.toml:
[instrumentation]
prometheus = true
prometheus_listen_addr = "127.0.0.1:26660"
sudo systemctl restart autheod
curl -s http://localhost:26660/metrics | head -20
Port 26660 must never be exposed publicly. Proxy through your monitoring stack over private network only.
Critical metrics
| Metric | Alert threshold | Meaning |
|---|
tendermint_consensus_height | No increase for >60s | Block production stopped |
tendermint_consensus_validator_power | = 0 | Validator jailed or tombstoned |
tendermint_p2p_peers | < 3 | Too few peers; sync at risk |
tendermint_consensus_rounds | Consistently > 1 | Network consensus trouble |
tendermint_mempool_size | > 4,500 | Mempool near capacity |
process_resident_memory_bytes | > 85% of total RAM | Memory pressure; OOM risk |
go_goroutines | > 5,000 | Possible goroutine leak |
process_open_fds | > 90% of limit | Increase LimitNOFILE |
Grafana setup
Install Prometheus and configure scraping
Add http://localhost:26660/metrics as a scrape target.
Install Grafana and add data source
Add Prometheus at http://localhost:9090.
Import community dashboard
Dashboards → Import → Dashboard ID 11036 (Cosmos/CometBFT community dashboard).
Configure alerts
Set up Alertmanager alerts for validator_power = 0, peer count < 3, and block height stall.
Log monitoring
sudo journalctl -u autheod -f
sudo journalctl -u autheod -f | grep '"level":"error"'
Key log patterns:
| Pattern | Meaning |
|---|
"level":"error" | Any error condition |
"jailed" | Validator jailed |
"tombstoned" | Permanent ban — act immediately |
"license" with error | License state transition failure |
Monitoring checklist