From 55f81c4295f5f51c80190d29c5de386fd2e64cef Mon Sep 17 00:00:00 2001 From: Adrian Schmutzler Date: Fri, 29 Dec 2017 16:26:28 +0100 Subject: [PATCH] api/alfred: Change calculation of rx/tx after reboot Previously, on restart the traffic of the last period before the restart was reused. Now, we use the logged traffic divided by the uptime. Signed-off-by: Adrian Schmutzler --- ffmap/routertools.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ffmap/routertools.py b/ffmap/routertools.py index 1da993f..6458baf 100644 --- a/ffmap/routertools.py +++ b/ffmap/routertools.py @@ -447,7 +447,7 @@ def calculate_network_io(mysql, router_id, uptime, router_update): router: old router dict router_update: new router dict (which will be updated with new data) """ - results = mysql.fetchall("SELECT netif, rx_bytes, tx_bytes, rx, tx FROM router_netif WHERE router = %s",(router_id,)); + results = mysql.fetchall("SELECT netif, rx_bytes, tx_bytes FROM router_netif WHERE router = %s",(router_id,)); with suppress(KeyError, StopIteration): if uptime < router_update["sys_uptime"]: @@ -462,8 +462,8 @@ def calculate_network_io(mysql, router_id, uptime, router_update): else: for row in results: netif_update = next(filter(lambda n: n["name"] == row["netif"], router_update["netifs"])) - netif_update["traffic"]["rx"] = int(row["rx"]) - netif_update["traffic"]["tx"] = int(row["tx"]) + netif_update["traffic"]["rx"] = int(netif_update["traffic"]["rx_bytes"] / router_update["sys_uptime"]) + netif_update["traffic"]["tx"] = int(netif_update["traffic"]["tx_bytes"] / router_update["sys_uptime"]) return uptime