Skip to content

feat(metrics): add Prometheus metrics support for beacon client - #6

Open
tosynthegeek wants to merge 5 commits into
developfrom
bn-metrics
Open

feat(metrics): add Prometheus metrics support for beacon client#6
tosynthegeek wants to merge 5 commits into
developfrom
bn-metrics

Conversation

@tosynthegeek

Copy link
Copy Markdown

What was wrong?

The beacon node had no Prometheus metrics, ream-metrics was wired into the lean client only, BeaconNodeConfig had no metrics flag, and there was no way to expose a /metrics endpoint. This blocked Kurtosis integration, since the ethereum-package config wires every CL participant's metrics port into a shared Prometheus/Grafana stack via Dora. See ReamLabs#1526.

How was it fixed?

  • Added a Prometheus metrics HTTP endpoint to the beacon node, with configurable address/port exposed via CLI flags.

  • Added beacon metrics into the beacon node's fork choice, gossipsub validation, engine API, networking, and KZG/DAS paths, implementing the beacon-metrics interop spec plus the PeerDAS gossip-verification, KZG-batch, reconstruction, and Fulu engine_getBlobsV2/V3 metrics.

  • Added beaconMetrics.json, a Grafana dashboard covering all wired metrics.

Some metrics have been added but not wired as there areno underlying implementation to hook into yet.

beacon_custody_groups_backfilled, beacon_partial_message_*, beacon_useful_full_columns_received_total,
beacon_fast_confirmation_*

To-Do

* Implement core beacon metrics (head slot, epochs, active validators, reorgs, deposits)

* Expose configurable metrics address and port in the beacon node CLI

* Integrate with Grafana dashboard via `beaconMetrics.json`

* Update ream_launcher.star + Kurtosis integration

Closes ReamLabs#1526
* Implement core beacon metrics (head slot, epochs, active validators, reorgs, deposits)

* Expose configurable metrics address and port in the beacon node CLI

* Integrate with Grafana dashboard via beaconMetrics.json

* Update ream_launcher.star + Kurtosis integration
@tosynthegeek
tosynthegeek changed the base branch from master to develop July 24, 2026 11:25
Comment thread crates/common/chain/beacon/src/beacon_chain.rs
Comment thread crates/common/chain/beacon/src/beacon_chain.rs Outdated
Comment thread crates/common/consensus/beacon/src/matrix_entry.rs Outdated
Comment thread crates/common/metrics/src/beacon.rs
Comment thread crates/common/chain/beacon/src/beacon_chain.rs Outdated
Comment thread crates/common/execution/engine/src/lib.rs Outdated

@perfogic perfogic left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🍵

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants