Update CSV metrics to include client counts and signal averages while reordering fields
This commit is contained in:
parent
f95945883c
commit
5c55276ef3
1 changed files with 5 additions and 5 deletions
10
listener.py
10
listener.py
|
@ -152,24 +152,24 @@ def write_csv(outfile):
|
||||||
timestamp = datetime.utcnow().isoformat()
|
timestamp = datetime.utcnow().isoformat()
|
||||||
row = {
|
row = {
|
||||||
"Timestamp": timestamp,
|
"Timestamp": timestamp,
|
||||||
|
"ClientsOnAP": len([mac for mac, count in ap_clients[target_ap_bssid].items() if count > 3]),
|
||||||
"ClientsOnChannel": len([mac for mac, count in clients.items() if count > 3]),
|
"ClientsOnChannel": len([mac for mac, count in clients.items() if count > 3]),
|
||||||
"APsOnChannel": len(aps),
|
"APsOnChannel": len(aps),
|
||||||
"PacketCount": packet_count,
|
|
||||||
"AvgAPSignal": round(sum([sum(v)/len(v) for v in ap_signals.values() if v]) / len(ap_signals) if ap_signals else 0, 2),
|
"AvgAPSignal": round(sum([sum(v)/len(v) for v in ap_signals.values() if v]) / len(ap_signals) if ap_signals else 0, 2),
|
||||||
"StrongestAPSignal": max([max(v) for v in ap_signals.values() if v], default=0),
|
"StrongestAPSignal": max([max(v) for v in ap_signals.values() if v], default=0),
|
||||||
"AvgSSIDSignal": round(sum([sum(v)/len(v) for v in ssid_signals.values() if v]) / len(ssid_signals) if ssid_signals else 0, 2),
|
"UnlinkedDevices": len(unlinked_candidates),
|
||||||
"MaxSSIDSignal": max([max(v) for v in ssid_signals.values() if v], default=0),
|
|
||||||
"ClientsOnAP": len([mac for mac, count in ap_clients[target_ap_bssid].items() if count > 3]),
|
|
||||||
"NumberofBSSIDsOnSSID": len([
|
"NumberofBSSIDsOnSSID": len([
|
||||||
bssid for bssid, ssid in ssid_map.items()
|
bssid for bssid, ssid in ssid_map.items()
|
||||||
if target_ap_bssid in ssid_map and ssid == ssid_map.get(target_ap_bssid)
|
if target_ap_bssid in ssid_map and ssid == ssid_map.get(target_ap_bssid)
|
||||||
]) if target_ap_bssid and target_ap_bssid in ssid_map else 0,
|
]) if target_ap_bssid and target_ap_bssid in ssid_map else 0,
|
||||||
|
"AvgSSIDSignal": round(sum([sum(v)/len(v) for v in ssid_signals.values() if v]) / len(ssid_signals) if ssid_signals else 0, 2),
|
||||||
|
"MaxSSIDSignal": max([max(v) for v in ssid_signals.values() if v], default=0),
|
||||||
"NumberofChannelsOnSSID": len(set([
|
"NumberofChannelsOnSSID": len(set([
|
||||||
bssid_channels.get(bssid)
|
bssid_channels.get(bssid)
|
||||||
for bssid, ssid in ssid_map.items()
|
for bssid, ssid in ssid_map.items()
|
||||||
if target_ap_bssid in ssid_map and ssid == ssid_map.get(target_ap_bssid)
|
if target_ap_bssid in ssid_map and ssid == ssid_map.get(target_ap_bssid)
|
||||||
])) if target_ap_bssid and target_ap_bssid in ssid_map else 0,
|
])) if target_ap_bssid and target_ap_bssid in ssid_map else 0,
|
||||||
"UnlinkedDevices": len(unlinked_candidates),
|
"PacketCount": packet_count,
|
||||||
"Deadpoints": len([ap for ap in aps if is_deadpoint(ap)])
|
"Deadpoints": len([ap for ap in aps if is_deadpoint(ap)])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue