Skip to content

Monitoring

The Base Reth Node exports Prometheus-compatible metrics. The base-cli-utils crate sets up a metrics HTTP listener using metrics-exporter-prometheus.

Key metric categories:

  • Process metrics — CPU, memory, file descriptors (via metrics-process)
  • RPC metrics — Request counts, latencies, error rates
  • Transaction pool — Pool size, pending/queued counts
  • Sync progress — Block height, peer count
  • Flashblocks — Flashblock production rate, latency

The devnet includes built-in monitoring commands:

Terminal window
# Check block numbers and sync status across all nodes
just devnet-status
# View funded test accounts with balances and nonces
just devnet-accounts
# Run smoke tests (send test transactions to L1 and L2)
just devnet-smoke
# Full check suite
just devnet-checks

Stream logs from devnet containers:

Terminal window
# All containers
just devnet-logs
# Specific containers
just devnet-logs l2-node builder

For performance profiling, build with the profiling profile:

Terminal window
just devnet-profiling

This starts the devnet with Pyroscope integration and optimized builds that retain frame pointers for accurate profiling.

The profiling profile settings:

  • Inherits from release
  • LTO disabled for faster builds
  • Debug info: line tables only
  • Frame pointers forced on
  • Symbols not stripped