add blocking percentage stats

This commit is contained in:
postscriptum 2026-03-22 22:11:51 +02:00
parent 9a36160c6d
commit 9b9c47cbb9

View file

@ -6,6 +6,7 @@ pub struct Snapshot {
pub request: u64,
pub blocked: u64,
pub entries: u64,
pub percent: f32,
}
#[derive(Default)]
@ -23,10 +24,17 @@ impl Total {
}
}
pub fn snapshot(&self) -> Snapshot {
let request = self.request.load(Ordering::Relaxed);
let blocked = self.blocked.load(Ordering::Relaxed);
Snapshot {
request: self.request.load(Ordering::Relaxed),
blocked: self.blocked.load(Ordering::Relaxed),
request,
blocked,
entries: self.entries.load(Ordering::Relaxed),
percent: if request > 0 {
blocked as f32 * 100.0 / request as f32
} else {
0.0
},
}
}
pub fn set_entries(&self, value: u64) {