1
0
mirror of git://f0xx.org/android_cast synced 2026-07-29 08:57:44 +03:00
Files
android_cast/pull_stats.sh
Anton Afanasyeu a4107797fa snap
2026-05-19 19:43:06 +02:00

49 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
DEVICES_LIST="$(adb devices -l)"
echo "${DEVICES_LIST}"
filter_out() {
local -n dev_string=${1}
[[ ${dev_string} =~ List* ]] && dev_string=""
return 0
}
LOG_ROOT="log_capture/session_stats/"
CLEAN_LOGS="no"
while true; do
read -p "clean logs on device after fetch? [Y/n]" yn
case $yn in
[Y|Yes|y|yes]* )
CLEAN_LOGS="yes"
break
;;
[N|No|n|no]* )
break
;;
*)
echo "answer Y(es) or N(no) (short y/n or yes/no)"
;;
esac
done
echo "${DEVICES_LIST}" | while IFS= read -r DEV; do
SERIAL="$(echo "${DEV}" | awk '{print $1}')"
filter_out SERIAL
[ -z "${SERIAL}" ] && continue
# echo "Device: ${DEV}"
# echo "Serial: ${SERIAL}"
adb -s "${SERIAL}" shell run-as com.foxx.androidcast ls files/session_stats/
LOG_PATH="${LOG_ROOT}/${SERIAL}/"
echo "------------ dumping in ${LOG_PATH}"
mkdir -p "${LOG_PATH}"
for f in $(adb -s ${SERIAL} shell run-as com.foxx.androidcast ls files/session_stats/); do
adb -s ${SERIAL} exec-out run-as com.foxx.androidcast cat "files/session_stats/$f" > "${LOG_PATH}/$f"
[[ "no" != "${CLEAN_LOGS}" ]] && adb -s ${SERIAL} shell run-as com.foxx.androidcast rm -f "files/session_stats/$f"
done
done
echo "run './gradlew :session-studio:run' to analyze logs; find the latest logs in ${LOG_ROOT}"