mirror of
https://github.com/hl-archive-node/nanoreth.git
synced 2025-12-06 19:09:54 +00:00
feat(metrics): Add cumulative transaction counters to improve observability (#12273)
Co-authored-by: Dan Cline <6798349+Rjected@users.noreply.github.com>
This commit is contained in:
@ -1,5 +1,5 @@
|
||||
use crate::Tables;
|
||||
use metrics::{Gauge, Histogram};
|
||||
use metrics::Histogram;
|
||||
use reth_metrics::{metrics::Counter, Metrics};
|
||||
use rustc_hash::FxHashMap;
|
||||
use std::time::{Duration, Instant};
|
||||
@ -259,17 +259,19 @@ impl Labels {
|
||||
#[derive(Metrics, Clone)]
|
||||
#[metrics(scope = "database.transaction")]
|
||||
pub(crate) struct TransactionMetrics {
|
||||
/// Total number of currently open database transactions
|
||||
open_total: Gauge,
|
||||
/// Total number of opened database transactions (cumulative)
|
||||
opened_total: Counter,
|
||||
/// Total number of closed database transactions (cumulative)
|
||||
closed_total: Counter,
|
||||
}
|
||||
|
||||
impl TransactionMetrics {
|
||||
pub(crate) fn record_open(&self) {
|
||||
self.open_total.increment(1.0);
|
||||
self.opened_total.increment(1);
|
||||
}
|
||||
|
||||
pub(crate) fn record_close(&self) {
|
||||
self.open_total.decrement(1.0);
|
||||
self.closed_total.increment(1);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user