Skip to content

Conversation

@klaus993
Copy link
Contributor

@klaus993 klaus993 commented Oct 9, 2025

Motivation

The Ethrex L1 Perf grafana dashboard currently doesn't let us filter by instance, it only works as a standalone dashboard for 1 ethrex instance.

Description

The instance filter now has a regex to avoid having to choose from each prometheus target: server:port and instead just filter by server and let it choose the port according to the different metric each pane needs to check

Closes #4976

The instance filter has a regex to avoid having to choose from each prometheus
target: `server:port` and instead just filter by `server` and let it choose the
port according to the different metric each pane needs to check
@klaus993 klaus993 requested a review from a team as a code owner October 9, 2025 18:46
@klaus993 klaus993 marked this pull request as draft October 9, 2025 18:46
@klaus993 klaus993 changed the title Modify Ethrex L1 Perf dashboard so it can be filtered by instance fix: Modify Ethrex L1 Perf dashboard so it can be filtered by instance Oct 14, 2025
@klaus993 klaus993 changed the title fix: Modify Ethrex L1 Perf dashboard so it can be filtered by instance fix(l1) Modify Ethrex L1 Perf dashboard so it can be filtered by instance Oct 14, 2025
@klaus993 klaus993 changed the title fix(l1) Modify Ethrex L1 Perf dashboard so it can be filtered by instance fix(l1): Modify Ethrex L1 Perf dashboard so it can be filtered by instance Oct 14, 2025
@github-actions github-actions bot added the L1 Ethereum client label Oct 14, 2025
@klaus993 klaus993 changed the title fix(l1): Modify Ethrex L1 Perf dashboard so it can be filtered by instance fix(l1): modify Ethrex L1 Perf dashboard so it can be filtered by instance Oct 14, 2025
@klaus993 klaus993 changed the title fix(l1): modify Ethrex L1 Perf dashboard so it can be filtered by instance fix(l1): modify Grafana dashboards so they can be filtered by instance Oct 14, 2025
@klaus993 klaus993 marked this pull request as ready for review October 16, 2025 21:22
@mpaulucci
Copy link
Collaborator

I see this is actively being worked on. Converting to draft, please convert to review once its ready

@mpaulucci mpaulucci marked this pull request as draft October 24, 2025 13:43
@ethrex-project-sync ethrex-project-sync bot moved this to In Progress in ethrex_l1 Oct 24, 2025
@rodrigo-o
Copy link
Collaborator

Apart for adding support for multiple servers (instances) to be able to compare different runs, the dashboard had major improvements:

  • Better separation of panels thanks to rows
  • Moved block building related panel to a WIP section (they are not as tested/checked as the other metrics/panels)
  • Reduce scrape time to 5s to be able to account for more blocks (some were missing on 12s scrape time)
  • Replaced the Block time & Gas Used % panel with two different ones
    • GGas/s by block
    • Block time by block
  • made the block execution breakdown repeated by instances

This still have some points to address in follow up PRs here are 2 issues that we need to tackle:

Main This PR
image image

@rodrigo-o rodrigo-o marked this pull request as ready for review October 24, 2025 20:03
Copilot AI review requested due to automatic review settings October 24, 2025 20:03
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR enhances the Grafana dashboards to support filtering metrics by instance using a regex pattern. The main improvement allows users to filter by server name (e.g., ethrex-mainnet-3-0-0) instead of requiring the full server:port format, with the regex automatically matching the appropriate port for each metric.

Key changes:

  • Modified instance filter variable to use regex pattern /^(?<text>[^:]+)(?::\\d+)?$/ for extracting server names
  • Updated metric queries across all dashboards to use instance=~\"$instance(:\\\\d+)?$\" pattern
  • Converted several stat panels to table format for better multi-instance visualization

Reviewed Changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
ethrex_l1_perf.json Updated instance filtering with regex, converted stat panels to tables, reorganized dashboard layout with new sections
ethrex_comparison.json New dashboard added for comparing ethrex performance against other Ethereum clients across different networks
ethereum_metrics_exporter.json Updated instance filtering with regex, converted stat panels to tables for multi-instance support

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@ethrex-project-sync ethrex-project-sync bot moved this from In Progress to In Review in ethrex_l1 Oct 24, 2025
@rodrigo-o
Copy link
Collaborator

This PR also added a new dashboard intended for internal use, comparing some instances of other clients in the same panel.

@jrchatruc jrchatruc added this pull request to the merge queue Oct 27, 2025
Merged via the queue into main with commit 23c14ec Oct 27, 2025
30 checks passed
@jrchatruc jrchatruc deleted the improve_ethrex_l1_grafana_dashboard branch October 27, 2025 14:47
@github-project-automation github-project-automation bot moved this from In Review to Done in ethrex_l1 Oct 27, 2025
@rodrigo-o rodrigo-o self-assigned this Oct 27, 2025
iovoid pushed a commit that referenced this pull request Oct 27, 2025
#4831)

**Motivation**

The Ethrex L1 Perf grafana dashboard currently doesn't let us filter by
instance, it only works as a standalone dashboard for 1 ethrex instance.

**Description**

The instance filter now has a regex to avoid having to choose from each
prometheus target: `server:port` and instead just filter by `server` and
let it choose the port according to the different metric each pane needs
to check

---------

Co-authored-by: Rodrigo Oliveri <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

L1 Ethereum client

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Use block number as x-axis in grafana

5 participants