Skip to content

feat(engine): add time_between_new_payloads metric#21158

Merged
shekhirin merged 1 commit intomainfrom
feat/time-between-payloads-metric
Jan 17, 2026
Merged

feat(engine): add time_between_new_payloads metric#21158
shekhirin merged 1 commit intomainfrom
feat/time-between-payloads-metric

Conversation

@gakonst
Copy link
Member

@gakonst gakonst commented Jan 17, 2026

Adds a histogram metric (consensus_engine_beacon_time_between_new_payloads) to track the time interval between consecutive engine_newPayload calls.

Motivation

This metric helps monitor:

  • Block arrival timing from the CL
  • Gaps or delays in payload delivery
  • Overall engine API health

On mainnet with 12s slots, you'd expect ~12s intervals minus execution time. Deviations indicate missed slots or CL issues.

Changes

  • Added time_between_new_payloads histogram to NewPayloadStatusMetrics
  • Records interval from start of current payload to finish of previous payload

Adds a histogram metric to track the time interval between consecutive
engine_newPayload calls. This helps monitor block arrival timing and
detect gaps or delays in payload delivery from the CL.
@gakonst gakonst added the A-engine Related to the engine implementation label Jan 17, 2026
@gakonst gakonst added the A-engine Related to the engine implementation label Jan 17, 2026
@github-project-automation github-project-automation bot moved this to Backlog in Reth Tracker Jan 17, 2026
@github-project-automation github-project-automation bot moved this from Backlog to In Progress in Reth Tracker Jan 17, 2026
@shekhirin shekhirin added this pull request to the merge queue Jan 17, 2026
Merged via the queue into main with commit 27e055f Jan 17, 2026
45 checks passed
@shekhirin shekhirin deleted the feat/time-between-payloads-metric branch January 17, 2026 10:29
@github-project-automation github-project-automation bot moved this from In Progress to Done in Reth Tracker Jan 17, 2026
Vui-Chee added a commit to okx/reth that referenced this pull request Jan 20, 2026
* tag 'v1.10.1': (49 commits)
  chore: bump version to 1.10.1 (paradigmxyz#21188)
  chore: rename extend_ref methods on sorted data structures (paradigmxyz#21043)
  fix(flashblocks): Add flashblock ws connection retry period (paradigmxyz#20510)
  chore(bench): add --disable-tx-gossip to benchmark node args (paradigmxyz#21171)
  refactor(stages): reuse history index cache buffers in `collect_history_indices` (paradigmxyz#21017)
  feat(download): resumable snapshot downloads with auto-retry (paradigmxyz#21161)
  ci: update to tempoxyz (paradigmxyz#21176)
  chore: apply spelling and typo fixes (paradigmxyz#21182)
  docs: document minimal storage mode in pruning FAQ (paradigmxyz#21025)
  chore(deps): weekly `cargo update` (paradigmxyz#21167)
  feat(execution-types): add receipts_iter helper (paradigmxyz#21162)
  revert: undo Chain crate, add LazyTrieData to trie-common (paradigmxyz#21155)
  feat(engine): add new_payload_interval metric (start-to-start) (paradigmxyz#21159)
  feat(engine): add time_between_new_payloads metric (paradigmxyz#21158)
  fix(storage-api): gate reth-chain dependency behind std feature
  perf(storage): batch trie updates across blocks in save_blocks (paradigmxyz#21142)
  refactor: use ExecutionOutcome::single instead of tuple From (paradigmxyz#21152)
  chore(chain-state): reorganize deferred_trie.rs impl blocks (paradigmxyz#21151)
  feat(primitives-traits): add try_recover_signers for parallel batch recovery (paradigmxyz#21103)
  perf: make Chain use DeferredTrieData (paradigmxyz#21137)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-engine Related to the engine implementation

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants