Skip to content

Commit dbf7b49

Browse files
committed
gauge metrics to inspect flag settings
1 parent d987794 commit dbf7b49

File tree

2 files changed

+34
-1
lines changed

2 files changed

+34
-1
lines changed

crates/op-rbuilder/src/launcher.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ use eyre::Result;
33
use crate::{
44
args::*,
55
builders::{BuilderConfig, BuilderMode, FlashblocksBuilder, PayloadBuilder, StandardBuilder},
6-
metrics::VERSION,
6+
metrics::{FlagMetrics, VERSION},
77
monitor_tx_pool::monitor_tx_pool,
88
primitives::reth::engine_api_builder::OpEngineApiBuilder,
99
revert_protection::{EthApiExtServer, EthApiOverrideServer, RevertProtectionExt},
@@ -98,6 +98,8 @@ where
9898
let builder_config = BuilderConfig::<B::Config>::try_from(builder_args.clone())
9999
.expect("Failed to convert rollup args to builder config");
100100

101+
FlagMetrics::record_flags(&builder_args);
102+
101103
let da_config = builder_config.da_config.clone();
102104
let rollup_args = builder_args.rollup_args;
103105
let op_node = OpNode::new(rollup_args.clone());

crates/op-rbuilder/src/metrics.rs

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ use reth_metrics::{
44
Metrics,
55
};
66

7+
use crate::args::OpRbuilderArgs;
8+
79
/// The latest version from Cargo.toml.
810
pub const CARGO_PKG_VERSION: &str = env!("CARGO_PKG_VERSION");
911

@@ -155,6 +157,35 @@ impl OpRBuilderMetrics {
155157
}
156158
}
157159

160+
/// Gauges to check whether particular flags are enabled or not
161+
#[derive(Metrics, Clone)]
162+
#[metrics(scope = "op_rbuilder_flags")]
163+
pub struct FlagMetrics {
164+
/// Whether flashblocks.enabled is set or not
165+
pub flashblocks_enabled: Gauge,
166+
/// Whether flashtestations.enabled is set or not
167+
pub flashtestations_enabled: Gauge,
168+
/// Whether builder.enable-revert-protection is set or not
169+
pub enable_revert_protection: Gauge,
170+
}
171+
172+
impl FlagMetrics {
173+
/// Set gauge metrics for some flags so we can inspect which ones are set
174+
/// and which ones aren't.
175+
pub fn record_flags(builder_args: &OpRbuilderArgs) {
176+
let flag_metrics = Self::default();
177+
flag_metrics
178+
.flashblocks_enabled
179+
.set(builder_args.flashblocks.enabled as i32);
180+
flag_metrics
181+
.flashtestations_enabled
182+
.set(builder_args.flashtestations.flashtestations_enabled as i32);
183+
flag_metrics
184+
.enable_revert_protection
185+
.set(builder_args.enable_revert_protection as i32);
186+
}
187+
}
188+
158189
/// Contains version information for the application.
159190
#[derive(Debug, Clone)]
160191
pub struct VersionInfo {

0 commit comments

Comments
 (0)