Refactor speedtest command to use a variable for header extraction and simplify server options for improved readability

This commit is contained in:
Yaro Kasear 2025-05-07 10:34:24 -05:00
parent 8f36942576
commit 594ce01b19

View file

@ -152,8 +152,11 @@ echo -e "Subject: Test ${BOOT_ID} Started\n\nTest ${BOOT_ID} has commenced." | m
FAILED_START=$(get_tx_failed) FAILED_START=$(get_tx_failed)
DUMMY_SPEEDTEST=$(speedtest --format=csv --output-header)
SPEEDTEST_HEADER=$(echo "$DUMMY_SPEEDTEST" | head -n 1)
# CSV setup # CSV setup
TEST_HEADER="StartTimestamp,EndTimestamp,Link,Level,Noise,BSSID,TX Bitrate,RX Bitrate,$(speedtest --csv-header),TX Failures,Channel,Frequency,Packet Loss,Jitter,LocalTCPUp,LocalTCPDown,LocalUDPUp,LocalUDPDown,RemoteTCPUp,RemoteTCPDown,RemoteUDPUp,RemoteUDPDown" TEST_HEADER="StartTimestamp,EndTimestamp,Link,Level,Noise,BSSID,TX Bitrate,RX Bitrate,$(SPEEDTEST_HEADER),TX Failures,Channel,Frequency,Packet Loss,Jitter,LocalTCPUp,LocalTCPDown,LocalUDPUp,LocalUDPDown,RemoteTCPUp,RemoteTCPDown,RemoteUDPUp,RemoteUDPDown"
LISTENER_HEADER="Timestamp,ClientsOnAP,ClientsOnChannel,APsOnChannel,AvgAPSignal,StrongestAPSignal,UnlinkedDevices,NumberofBSSIDsOnSSID,AvgSSIDSignal,MaxSSIDSignal,NumberofChannelsOnSSID,PacketCount,Deadpoints" LISTENER_HEADER="Timestamp,ClientsOnAP,ClientsOnChannel,APsOnChannel,AvgAPSignal,StrongestAPSignal,UnlinkedDevices,NumberofBSSIDsOnSSID,AvgSSIDSignal,MaxSSIDSignal,NumberofChannelsOnSSID,PacketCount,Deadpoints"
echo "Speedtest,LocalTCPUp,LocalTCPDown,LocalUDPUp,LocalUDPDown,RemoteTCPUp,RemoteTCPDown,RemoteUDPUp,RemoteUDPDown" >"${TEST_FILE}_durations.csv" echo "Speedtest,LocalTCPUp,LocalTCPDown,LocalUDPUp,LocalUDPDown,RemoteTCPUp,RemoteTCPDown,RemoteUDPUp,RemoteUDPDown" >"${TEST_FILE}_durations.csv"
@ -219,7 +222,8 @@ for ((COUNTER = 1; COUNTER <= NUM_TESTS; COUNTER++)); do
for ((retry = 1; retry <= MAX_RETRIES; retry++)); do for ((retry = 1; retry <= MAX_RETRIES; retry++)); do
SECONDS=0 SECONDS=0
log "Speed test attempt $retry" log "Speed test attempt $retry"
speed_results=$(speedtest --secure --csv --server 57444 --server 16797 --server 40818 --server 24079 --server 55661 2>/dev/null || true) # speed_results=$(speedtest --secure --csv --server 57444 --server 16797 --server 40818 --server 24079 --server 55661 2>/dev/null || true)
speed_results=$(speedtest --format=csv 2>/dev/null || true)
speedtest_duration=$SECONDS speedtest_duration=$SECONDS
[[ -n "$speed_results" ]] && break [[ -n "$speed_results" ]] && break
warn "Speedtest failed. Retrying in $RETRY_DELAY seconds..." warn "Speedtest failed. Retrying in $RETRY_DELAY seconds..."