pub trait MetricsBackend {
// Required methods
fn add_tx_recv_cnt(&self, count: usize);
fn set_mempool_usage_ratio(&self, ratio: f64);
fn set_mempool_tx_count(&self, size: usize);
fn add_tx_rejected_cnt(&self, count: usize);
fn add_block_recv_cnt(&self, count: usize);
fn add_peer_connected_cnt(&self, count: usize);
fn sub_peer_connected_cnt(&self, count: usize);
fn add_peer_quarantined_cnt(&self, count: usize);
fn sub_peer_quarantined_cnt(&self, count: usize);
fn set_peer_available_cnt(&self, count: usize);
fn set_slot_start_time(&self, time: SecondsSinceUnixEpoch);
fn set_tip_block(&self, block: &Block, block_ref: &Ref);
}