From b325319f203da5cdbae51a915c04297369e9b641 Mon Sep 17 00:00:00 2001 From: SG Date: Tue, 16 May 2023 12:33:28 +0200 Subject: [PATCH] Added more /stats --- transphase/transphase.py | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/transphase/transphase.py b/transphase/transphase.py index 43f34e2..e372f9c 100644 --- a/transphase/transphase.py +++ b/transphase/transphase.py @@ -8,8 +8,25 @@ TRANSFERRED_DATA = 0 app = Quart(__name__) -def get_var_size(var): - return sys.getsizeof(var) / (1024 * 1024) + +def convert_bytes(byte_value): + if byte_value < 1024: # Less than 1 kilobyte + return str(byte_value) + " B" + elif byte_value < 1024**2: # Less than 1 megabyte + kb_value = round(byte_value / 1024) + return str(kb_value) + " KB" + elif byte_value < 1024**3: # Less than 1 gigabyte + mb_value = round(byte_value / (1024**2),2) + return str(mb_value) + " MB" + elif byte_value < 1024**4: # Less than 1 terabyte + gb_value = round(byte_value / (1024**3),2) + return str(gb_value) + " GB" + elif byte_value < 1024**5: # Less than 1 petabyte + tb_value = round(byte_value / (1024**4),2) + return str(tb_value) + " TB" + else: # More than or equal to 1 petabyte + tb_value = round(byte_value / (1024**5),2) + return str(tb_value) + " PB" @app.route("/") async def retmain(): @@ -31,7 +48,7 @@ async def handle_websockets(): for peer in peer_list[peer_group_id]: if peer != websocket._get_current_object(): await peer.send(message) - TRANSFERRED_DATA = round(TRANSFERRED_DATA + get_var_size(message)) + TRANSFERRED_DATA = TRANSFERRED_DATA + sys.getsizeof(message) except asyncio.exceptions.CancelledError: peer_list[peer_group_id].remove(websocket._get_current_object()) if len(peer_list[peer_group_id]) < 1: @@ -46,7 +63,7 @@ async def return_stats(): peers_connected = 0 for p in peer_list.values(): peers_connected += len(p) - resp = f"

Uptime: {uptime_str}

Peers: {peers_connected}

Transferred: {TRANSFERRED_DATA} MB

" + resp = f"

Uptime: {uptime_str}

Peers: {peers_connected}

Transferred: {convert_bytes(TRANSFERRED_DATA)}

" return resp app.run() \ No newline at end of file