reth_basic_payload_builder/metrics.rs
1//! Metrics for the payload builder impl
2
3use reth_metrics::{metrics::Counter, Metrics};
4
5/// Transaction pool metrics
6#[derive(Metrics)]
7#[metrics(scope = "payloads")]
8pub(crate) struct PayloadBuilderMetrics {
9 /// Total number of times an empty payload was returned because a built one was not ready.
10 pub(crate) requested_empty_payload: Counter,
11 /// Total number of initiated payload build attempts.
12 pub(crate) initiated_payload_builds: Counter,
13 /// Total number of failed payload build attempts.
14 pub(crate) failed_payload_builds: Counter,
15}
16
17impl PayloadBuilderMetrics {
18 pub(crate) fn inc_requested_empty_payload(&self) {
19 self.requested_empty_payload.increment(1);
20 }
21
22 pub(crate) fn inc_initiated_payload_builds(&self) {
23 self.initiated_payload_builds.increment(1);
24 }
25
26 pub(crate) fn inc_failed_payload_builds(&self) {
27 self.failed_payload_builds.increment(1);
28 }
29}