当前位置: 首页 > news >正文

功耗日志抓取需求

最近罗列了一些功耗分析需要的常见日志:

测试功耗前:

adb shell dumpsys batterystats --reset

adb shell dumpsys batterystats --enable full-wake-history

测试功耗后,使用脚本导出如下功耗日志:

脚本

chmod +x collect_logs.sh

./collect_logs.sh

运行脚本后,所有日志将被保存到 logs_<时间戳>.zip 文件中

抓取命令

说明

#!/bin/bash

# 定义日志保存目录

LOG_DIR="logs"

mkdir -p $LOG_DIR

# 1. adb bugreport

echo "Collecting adb bugreport..."

adb bugreport > $LOG_DIR/bugreport.txt

# 2. adb shell dumpsys batterystats

echo "Collecting batterystats..."

adb shell dumpsys batterystats > $LOG_DIR/batterystats.txt

# 3. adb shell dumpsys power

echo "Collecting power info..."

adb shell dumpsys power > $LOG_DIR/power.txt

# 4. adb shell dumpsys window

echo "Collecting window info..."

adb shell dumpsys window > $LOG_DIR/window.txt

# 5. adb shell dumpsys activity processes

echo "Collecting process status..."

adb shell dumpsys activity processes > $LOG_DIR/process_status.txt

# 6. adb logcat

echo "Collecting logcat..."

adb logcat -d > $LOG_DIR/logcat.txt

# 7. adb shell dumpsys cpuinfo

echo "Collecting CPU info..."

adb shell dumpsys cpuinfo > $LOG_DIR/cpuinfo.txt

# 8. adb shell dumpsys netstats

echo "Collecting netstats..."

adb shell dumpsys netstats > $LOG_DIR/netstats.txt

# 9. adb shell getprop

echo "Collecting system properties..."

adb shell getprop > $LOG_DIR/getprop.txt

# 10. adb shell dumpsys jobscheduler

echo "Collecting jobscheduler info..."

adb shell dumpsys jobscheduler > $LOG_DIR/jobscheduler.txt

# 11. adb shell dumpsys usagestats

echo "Collecting usagestats..."

adb shell dumpsys usagestats > $LOG_DIR/usagestats.txt

# 12. adb shell dumpsys settings

echo "Collecting settings info..."

adb shell dumpsys settings > $LOG_DIR/settings.txt

# 13. adb shell dumpsys sensorservice

echo "Collecting sensor info..."

adb shell dumpsys sensorservice > $LOG_DIR/sensorservice.txt

# 14. adb shell dumpsys device_policy

echo "Collecting device policy info..."

adb shell dumpsys device_policy > $LOG_DIR/device_policy.txt

# 15. adb shell tcpdump

echo "Collecting tcpdump (this may take a while)..."

adb shell tcpdump -i any -s 0 -w /sdcard/capture.pcap &

TCPDUMP_PID=$!

sleep 10  # 抓包 10 秒

kill $TCPDUMP_PID

adb pull /sdcard/capture.pcap $LOG_DIR/capture.pcap

adb shell rm /sdcard/capture.pcap

# 16. adb shell dumpsys wifi

echo "Collecting Wi-Fi info..."

adb shell dumpsys wifi > $LOG_DIR/wifi.txt

# 17. adb shell dumpsys location

echo "Collecting location info..."

adb shell dumpsys location > $LOG_DIR/location.txt

# 18. adb shell iptables

echo "Collecting iptables rules..."

adb shell iptables -L -v -n > $LOG_DIR/iptables.txt

# 19. adb shell dumpsys netpolicy

echo "Collecting netpolicy info..."

adb shell dumpsys netpolicy > $LOG_DIR/netpolicy.txt

# 20. adb shell dumpsys deviceidle

echo "Collecting deviceidle info..."

adb shell dumpsys deviceidle > $LOG_DIR/deviceidle.txt

# 21. adb shell dumpsys connmetrics

echo "Collecting connmetrics info..."

adb shell dumpsys connmetrics > $LOG_DIR/connmetrics.txt

# 打包日志

echo "Compressing logs..."

TIMESTAMP=$(date +"%Y%m%d_%H%M%S")

ZIP_FILE="logs_$TIMESTAMP.zip"

zip -r $ZIP_FILE $LOG_DIR

echo "Logs have been saved to $ZIP_FILE"

adb bugreport

内部提单:虽然是最佳的功耗日志,但是抓取耗时且日志大,故实验室环境抓就行

adb shell dumpsys batterystats

大数据提单:BatteryStats日志可以理解为简版的BugReport日志,优点日志小

adb shell dumpsys power

电源管理信息,也包含wakelock日志

adb shell dumpsys window

窗口管理信息

adb shell dumpsys activity processes

进程状态信息

adb logcat

1.内部提单需完整流水日志,例如完整的mtklog、展讯log

2.大数据提单,需至少最近2小时内的logcat流水日志

adb shell dumpsys cpuinfo

获取 CPU 使用情况

adb shell dumpsys netstats

网络 socket 状态

adb shell getprop

获取系统属性

adb shell dumpsys jobscheduler

获取 JobScheduler 任务信息

adb shell dumpsys usagestats

获取应用使用统计信息

adb shell dumpsys settings

获取系统设置信息

adb shell dumpsys sensorservice

获取传感器信息

adb shell dumpsys device_policy

获取设备策略信息

adb shell tcpdump -i any -s 0 -w /sdcard/capture.pcap

抓取网络数据包(需要 root 权限)

adb shell dumpsys wifi

获取 Wi-Fi 状态信息

adb shell dumpsys location

获取 GPS 状态信息

adb shell iptables -L -v -n

获取 iptables 规则

adb shell dumpsys netpolicy

获取网络策略信息

adb shell dumpsys deviceidle

获取Doze模式管控信息

adb shell dumpsys connmetrics

待机中packet wakeup events

/power/log

定制的通用、场景、资源监控、温升等7天内的精简日志

例如导出如下bugReport日志和dump日志,其中流水日志建议使用方案商给的流水日志单独导出

0

相关文章:

  • (六)安卓开发中的Activity的启动、关闭和生命周期详解
  • 目录遍历(Directory traversal)漏洞总结
  • keepalived高可用介绍
  • VLAN(虚拟局域网)
  • 机器学习之数据预处理(一):缺失值处理和异常值识别的几种常用方法
  • ER-图,详情和画法
  • Windows操作系统安全配置(一)
  • 关于计算机网络的一些疑问
  • 新一代AI架构实践:数字大脑AI+智能调度MCP+领域执行APP的黄金金字塔体系
  • 批量将 Markdown 转换为 Word/PDF 等其它格式
  • react和vue在开发使用的语法上面有什么区别?
  • 自动微分模块
  • SpringSecurity框架入门
  • (自用)WebSocket创建流程
  • oracle批量删除分区
  • 【船舷外机】行业研究
  • 数据结构学习-第一天
  • 【注解简化配置的原理是什么】
  • springboot-ai接入DeepSeek
  • NO.71十六届蓝桥杯备战|搜索算法-递归型枚举与回溯剪枝|枚举子集|组合型枚举|枚举排列|全排列问题(C++)
  • 重庆专业微网站建设/搜索引擎营销分类
  • 什么叫定制网站/网站推广优化排名教程
  • 杭州做网站的公司/如何进行电子商务网站推广
  • wordpress 后台访问慢/公司优化是什么意思
  • 自己做的网站怎么用qq登入/一份完整的营销策划书
  • 临海受欢迎营销型网站建设/按效果付费的网络推广方式