diff --git a/src/stats/snap.rs b/src/stats/snap.rs index 19d3922..3d26fe5 100644 --- a/src/stats/snap.rs +++ b/src/stats/snap.rs @@ -31,11 +31,17 @@ pub struct Sum { percent: f32, } +#[derive(Serialize)] +pub struct Request { + total: u64, + allowed: Sum, + blocked: Sum, +} + #[derive(Serialize)] pub struct Snap { rules: u64, - request: Sum, - blocked: Sum, + request: Request, up: Up, } @@ -48,17 +54,20 @@ impl Snap { }; Self { rules, - request: Sum { + request: Request { total: request, - percent: if request == 0 { - 0.0 - } else { - 100.0 - blocked_percent + allowed: Sum { + total: request - blocked, + percent: if request == 0 { + 0.0 + } else { + 100.0 - blocked_percent + }, + }, + blocked: Sum { + total: blocked, + percent: blocked_percent, }, - }, - blocked: Sum { - total: blocked, - percent: blocked_percent, }, up: Up::from_startup_seconds(seconds_from_startup), }