From da897b950ecf2dfb2c553ca0d72a0ec955889226 Mon Sep 17 00:00:00 2001 From: Mike Dilger Date: Tue, 11 Feb 2025 10:52:22 +1300 Subject: [PATCH] management "stats" command --- src/web/management/mod.rs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/web/management/mod.rs b/src/web/management/mod.rs index 5571d65..325f538 100644 --- a/src/web/management/mod.rs +++ b/src/web/management/mod.rs @@ -108,6 +108,7 @@ pub fn handle_inner(pubkey: Pubkey, command: Value) -> Result, Err "supportedmethods", "numconnections", "uptime", + "stats", "listadmins", "listmoderators", "grantmoderator", @@ -213,6 +214,21 @@ pub fn handle_inner(pubkey: Pubkey, command: Value) -> Result, Err "result": uptime_in_secs, }))) } + "stats" => { + let store_stats = GLOBALS.store.get().unwrap().stats()?; + Ok(Some(json!({ + "result": { + "uptime": GLOBALS.start_time.elapsed().as_secs(), + "num_connections": &GLOBALS.num_connections, + "bytes_received": &GLOBALS.bytes_inbound, + "bytes_sent": &GLOBALS.bytes_outbound, + "event_bytes": store_stats.event_bytes, + "num_events": store_stats.index_stats.i_index_entries, + "index_disk_usage": store_stats.index_stats.disk_usage, + "index_memory_usage": store_stats.index_stats.memory_usage, + } + }))) + } "listadmins" => { let keys = GLOBALS.config.read().admin_hex_keys.clone(); Ok(Some(json!({