Skip to content

Commit

Permalink
transaction_insertion_time_in_thread_pool and `select_transactions_…
Browse files Browse the repository at this point in the history
…time` use microseconds
  • Loading branch information
rafal-ch committed Oct 23, 2024
1 parent 82262eb commit 49a79b2
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 18 deletions.
24 changes: 12 additions & 12 deletions crates/metrics/src/txpool_metrics.rs
Original file line number Diff line number Diff line change
Expand Up @@ -23,18 +23,18 @@ pub struct TxPoolMetrics {
/// Time of transactions in the txpool in seconds
pub transaction_time_in_txpool_secs: Histogram,
/// Time actively spent by transaction insertion in the thread pool
pub transaction_insertion_time_in_thread_pool_milliseconds: Histogram,
pub transaction_insertion_time_in_thread_pool_microseconds: Histogram,
/// How long it took for the selection algorithm to select transactions
pub select_transactions_time_nanoseconds: Histogram,
pub select_transactions_time_microseconds: Histogram,
}

impl Default for TxPoolMetrics {
fn default() -> Self {
let tx_size = Histogram::new(buckets(Buckets::TransactionSize));
let transaction_time_in_txpool_secs = Histogram::new(buckets(Buckets::Timing));
let select_transactions_time_nanoseconds =
let select_transactions_time_microseconds =
Histogram::new(buckets(Buckets::TimingCoarseGrained));
let transaction_insertion_time_in_thread_pool_milliseconds =
let transaction_insertion_time_in_thread_pool_microseconds =
Histogram::new(buckets(Buckets::TimingCoarseGrained));

let number_of_transactions = Gauge::default();
Expand All @@ -47,8 +47,8 @@ impl Default for TxPoolMetrics {
number_of_transactions_pending_verification,
number_of_executable_transactions,
transaction_time_in_txpool_secs,
transaction_insertion_time_in_thread_pool_milliseconds,
select_transactions_time_nanoseconds,
transaction_insertion_time_in_thread_pool_microseconds,
select_transactions_time_microseconds,
};

let mut registry = global_registry().registry.lock();
Expand Down Expand Up @@ -83,16 +83,16 @@ impl Default for TxPoolMetrics {
);

registry.register(
"txpool_select_transactions_time_nanoseconds",
"The time it took to select transactions for inclusion in a block in nanoseconds",
metrics.select_transactions_time_nanoseconds.clone(),
"txpool_select_transactions_time_microseconds",
"The time it took to select transactions for inclusion in a block in microseconds",
metrics.select_transactions_time_microseconds.clone(),
);

registry.register(
"txpool_insert_transaction_time_milliseconds",
"The time it took to insert a transaction in the txpool in milliseconds",
"txpool_transaction_insertion_time_in_thread_pool_microseconds",
"The time it took to insert a transaction in the txpool in microseconds",
metrics
.transaction_insertion_time_in_thread_pool_milliseconds
.transaction_insertion_time_in_thread_pool_microseconds
.clone(),
);

Expand Down
8 changes: 4 additions & 4 deletions crates/services/txpool_v2/src/pool.rs
Original file line number Diff line number Diff line change
Expand Up @@ -257,10 +257,10 @@ where
}
}

fn record_select_transaction_time_in_nanoseconds(start: Instant) {
let elapsed = start.elapsed().as_nanos() as f64;
fn record_select_transaction_time(start: Instant) {
let elapsed = start.elapsed().as_micros() as f64;
txpool_metrics()
.select_transactions_time_nanoseconds
.select_transactions_time_microseconds
.observe(elapsed);
}

Expand Down Expand Up @@ -292,7 +292,7 @@ where
.selection_algorithm
.gather_best_txs(constraints, &mut self.storage);
if let Some(start) = maybe_start {
Self::record_select_transaction_time_in_nanoseconds(start)
Self::record_select_transaction_time(start)
};

if metrics {
Expand Down
4 changes: 2 additions & 2 deletions crates/services/txpool_v2/src/service.rs
Original file line number Diff line number Diff line change
Expand Up @@ -482,9 +482,9 @@ where
.inc();
let start_time = tokio::time::Instant::now();
insert_transaction_thread_pool_op();
let time_for_task_to_complete = start_time.elapsed().as_millis();
let time_for_task_to_complete = start_time.elapsed().as_micros();
txpool_metrics
.transaction_insertion_time_in_thread_pool_milliseconds
.transaction_insertion_time_in_thread_pool_microseconds
.observe(time_for_task_to_complete as f64);
txpool_metrics
.number_of_transactions_pending_verification
Expand Down

0 comments on commit 49a79b2

Please sign in to comment.