Monitoring
Observability tools for monitoring the network
Kepler is built using Cosmos SDK, which in turn uses CometBFT. This allows you to access CometBFT metrics.
You can expose metrics in Prometheus format, which can then be collected by Prometheus.
But this functionality is disabled by default. To enable Prometheus metrics, update config.toml
as follows:
Metrics will be available at the /metrics
endpoint on port 26660
.
You can explore the full list of available metrics here
The exposed data allows you to track validator behavior (e.g. missed blocks, voting power), monitor block production speed, and analyze network activity over time. This information can be visualized in tools like Grafana and used to trigger alerts via Prometheus.
Advanced production monitoring
For production-grade monitoring, Alertmanager can be integrated with Prometheus to trigger alerts based on metric conditions — such as halted block production, high block time, or missing validator signatures. Alerts can be routed to channels like Slack, Telegram, or email. Additionally, system-level monitoring can be added using Node Exporter to track CPU, memory, and disk usage. Combined, this forms a robust observability stack covering both blockchain and infrastructure health.
You can create custom Grafana dashboards that combine metrics from multiple sources—like the blockchain node, system exporter, and other services—into a single, unified view. This allows you to tailor monitoring exactly to your needs, whether it’s focused on performance, reliability, or infrastructure health. Dashboards can include specific panels, filters, and alerts relevant to your environment, making them a flexible and powerful tool for observability.
Ready-to-Use Minimal Monitoring Setup
Here’s a ready-to-use setup of Grafana and Prometheus in Docker Compose, designed for quick and easy deployment. It comes preconfigured to collect and visualize metrics from both a local Kepler node and the underlying Linux system. Just follow the steps below to clone the repo, enable metrics, and start monitoring in minutes.
Prerequisites
- Docker and Docker Compose installed
- Kepler chain node running locally
Setup
- Clone project into a directory of your choice
- Make setup script executable
- Run it
Grafana
First Authentication
Log in to Grafana with admin/admin
and set your own password.
Next steps
Then you can explore the dashboards:
Kepler Node Monitoring from Ditto
- for the Kepler blockchainNode Exporter Full
- for Linux system metrics
Prometheus
Not exposed by default. You can specify ports in docker-compose.yml for the Prometheus container if needed.