当前位置:   article > 正文

Systrace抓取_systrace.py

systrace.py

Systrace是分析Android性能问题的神器,Google IO 2017上更是对其各种强推. 是分析卡顿掉帧问题核心工具,只要能提供卡顿现场,systrace就能很好定位问题

Systrace是基于内核ftrace机制来实现的一套trace工具,android上层实现了Trace类,用于把trace信息写入ftrace buffer,最后再通过ftrace buffer抓取出来

1.使用python版本抓取trace

进入systrace.py所在目录(一般位于android-platform_tools下的systrace文件夹下),打开终端

输入命令

python systrace.py [options] [category1] [category2] ... [categoryN]

注意:python必须是2.x版本。

 

 -o 后直接是文件名,如果是目录会进行判断目录是否存在,不存在会报错

category你需要抓取模块的类型

 

示例:

python systrace.py gfx rs irq input view sched am wm camera dalvik freq idle load sync workq power mmc disk sm audio hal video app res binder_driver binder_lock -b 20480 -t 5 -o trace.html

python systrace.py -a com.android.systemui -b 20480 -t 5 -o my_systrace_report.html sched freq idle am wm gfx view binder_driver hal dalvik camera input res

命令执行完后,systrace.py 所在地方会生成一个trace.html

 

打开谷歌浏览器, 在Chrome浏览器的地址栏中输入 chrome://tracing,点击Load选择需要的trace文件即可

Trace的X轴表示时间,Y轴以进程进行分组,进程组内是各个线程,可以收缩和展开。每个应用进程包含每个线程所包含的所有跟踪标记,包括基于启用跟踪类别的高级跟踪事件的层次结构。

界面介绍

 

 使用android自带的抓取trace的方法

使用使用android自带的抓取trace的方法,这种方法适用于抓取长trace,最长支持30分钟,但是可能会影响性能。

a.开启设备并进入开发者模式

b.找到“系统追踪” ,然后选择打开“显示快捷图块”、“长期追踪”开关;

c.在“类别”中可以选择需要记录的tag。

 

d.下拉状态栏点击“系统跟踪”图块,即可开始抓取,再次点击图块即可停止抓取;

 

e.最后可使用adb pull /data/local/traces 导出文件。 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/429688
推荐阅读
相关标签
  

闽ICP备14008679号