SuperAPI AI 工具集

extracting-logs-with-logcat

测试与质量

查看项目

更新于 10-16 01:27

技能介绍

用途:面向 Android 测试与调试,围绕 adb logcat 读取设备日志,服务于测试失败排查、调试、冒烟测试和 CI 复现。不适用于截图录屏、拉取通用文件、完整 CI 脚本、手势与状态注入等场景。

主要能力:三种基本操作——adb logcat 流式输出、adb logcat -d 快照后退出、adb logcat -c 清空缓冲区。缓冲区选择用 -b,可选 main(默认应用侧,不含 system/crash)、system、crash、events、radio、kernel、all、default(main+system+crash)。支持 tag:priority 过滤表达式(V/D/I/W/E/F/S),惯用写法如 adb logcat ActivityManager:I MyApp:D *:S;-v 可选 brief/long/process/raw/tag/thread/threadtime(默认)/time 等格式,并可与 color、descriptive、epoch、monotonic、printable、uid、usec、UTC、year、zone 等修饰符叠加。时间与 PID 过滤包括 -T(时间戳或条数,前者持续流式)、-t(tail 后退出)、--pid,配合 adb shell pidof -s。长期抓取可用 -f/-r/-n 轮转,-G 调整缓冲区大小,-g 查看用量。

必要用法:CI 标准模式为先 -c 清空、跑场景、失败时用 -d 分别导出 main、crash(-v threadtime)与 events(-v descriptive)到 artefacts。脚本中过滤字符串含 * 必须加引号,避免 glob 展开。区分 adb logcat -f(主机侧路径)与 adb shell logcat -f(设备侧路径)。发布包可用 proguard 规则 -assumenosideeffects class android.util.Log 移除 v/d/i 与 isLoggable,保留 w/e/wtf;不得对 kotlin.jvm.internal.Intrinsics 使用该规则。

限制:-v json 需设备 Android 11(API 30)及以上,低版本会静默输出空流;pidof -s 需 API 24+;-T <count> 打印后仍持续流式,需退出应改用 -t;不要用主机侧 grep 过滤,应在 logcat 层过滤;长时间会话应设超时预算。资料未提供收费、价格或平台效果信息。