mirror of
https://github.com/deuxfleurs-org/garage.git
synced 2026-08-21 10:26:36 +00:00
Add wrapper over sled tree to count items (used for big queues)
This commit is contained in:
+3
-1
@@ -22,6 +22,7 @@ use opentelemetry::{
|
||||
use garage_util::data::*;
|
||||
use garage_util::error::*;
|
||||
use garage_util::metrics::RecordDuration;
|
||||
use garage_util::sled_counter::SledCountedTree;
|
||||
use garage_util::time::*;
|
||||
use garage_util::tranquilizer::Tranquilizer;
|
||||
|
||||
@@ -155,7 +156,7 @@ pub struct BlockManager {
|
||||
|
||||
rc: sled::Tree,
|
||||
|
||||
resync_queue: sled::Tree,
|
||||
resync_queue: SledCountedTree,
|
||||
resync_notify: Notify,
|
||||
|
||||
system: Arc<System>,
|
||||
@@ -184,6 +185,7 @@ impl BlockManager {
|
||||
let resync_queue = db
|
||||
.open_tree("block_local_resync_queue")
|
||||
.expect("Unable to open block_local_resync_queue tree");
|
||||
let resync_queue = SledCountedTree::new(resync_queue);
|
||||
|
||||
let endpoint = system
|
||||
.netapp
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
use opentelemetry::{global, metrics::*};
|
||||
|
||||
use garage_util::sled_counter::SledCountedTree;
|
||||
|
||||
/// TableMetrics reference all counter used for metrics
|
||||
pub struct BlockManagerMetrics {
|
||||
pub(crate) _resync_queue_len: ValueObserver<u64>,
|
||||
@@ -20,7 +22,7 @@ pub struct BlockManagerMetrics {
|
||||
}
|
||||
|
||||
impl BlockManagerMetrics {
|
||||
pub fn new(resync_queue: sled::Tree) -> Self {
|
||||
pub fn new(resync_queue: SledCountedTree) -> Self {
|
||||
let meter = global::meter("garage_model/block");
|
||||
Self {
|
||||
_resync_queue_len: meter
|
||||
|
||||
Reference in New Issue
Block a user