Monitoring in Docker

stack for Story using Docker Compose (Prometheus + Grafana + Alertmanager) with alerts

circle-info
  • Prometheus scraping Story metrics

  • Grafana dashboards (pre-provisioned datasource)

  • Alertmanager to route alerts (Telegram/Discord/email later)

  • Node Exporter for host disk/CPU/RAM

This assumes your Story node runs on the host, and monitoring runs in Docker on the same server.

1. Enable metrics on the Story node

A) Consensus (CometBFT) metrics

Enable Prometheus metrics in your config.toml:

prometheus = true

check:

curl -s http://127.0.0.1:26660/metrics

B) Execution (story-geth) metrics

Enable geth metrics:

  • --metrics

  • --metrics.addr 127.0.0.1

  • --metrics.port 6060

2. Repo layout

Create a folder like story-monitoring-stack/:

3. Create docker-compose.yml

4. Prometheus config

in path prometheus/prometheus.yml

5. Alert rules

in path prometheus/rules.story.yml

6. Alertmanager

in path alertmanager/alertmanager.yml

This is a “starter” config that just groups alerts. Replace receiver with Telegram/Discord/email later.

7. Grafana provisioning

in path grafana/provisioning/datasources/ds.yml

grafana/provisioning/dashboards/dashboards.yml

You can drop JSON dashboards into grafana/dashboards/ later.

8. Run it

From the stack directory:

Login to Grafana:

  • http://<server-ip>:3000

  • user: admin, pass: admin

Last updated