getLog.bat:

adb root
adb remount
adb wait-for-device
adb logcat -v time > C:\log.txt

在Android中不同的log写到不同的设备中,共有/dev/log/system, /dev/log/main, /dev/log/radion, /dev/log/events四中类型。其中默认Log.v等写入/dev/log/main中。Slog写入/dev/log/system中。

adb logcat -b <system, radio, events, main(default)>

main — 查看主缓冲区 (默认缓冲区)   

radio — 查看包含在无线/电话相关的缓冲区消息   

events — 查看事件相关的消息

1.app log
adb logcat –v time > c:\appLog.txt

2.radio log
adb logcat –v time –b radio >c:\radioLog.txt

3.kernel log
adb shell cat /proc/kmsg > kernel.log

4.导出当前缓存的kernel log
adb shell dmesg

5.实时查看kernel log
adb shell kmsgcat


1、logcat

(四类log buffer是main,radio,system,events)

adb wait-for-device logcat

adb logcat -v time > logcat.txt      //默认是-b main -b system
adb logcat -v time -b main        //main log
adb logcat -v time -b radio        //radio log
adb logcat -v time -b system        //system log
adb logcat -v time -b events
 
2、anr log
adb pull /data/anr
 
3、tombstone log
adb pull /data/tombstones
 
4、core log
adb pull  /data/log/core
 
5、开机log
adb shell dmesg > dmesg.txt
 
6、logcatch
adb pull /data/logcatch
 
7、qxdm log
adb pull /sdcard/logs
 
8、 hprof log
在分析app 时,我们通常需要分析app 的java heap 资料,如分析java 的memory leak, 追查heap
中相关变量情况等。
在android 中抓取app 的hprof 操作方式有下面几种:
第一种方式: 使用am 命令
   adb shell am dumpheap {Process} file
   如 adb shell am dumpheap com.android.phone /data/anr/phone.hprof
   adb pull /data/anr/phone.hprof
第二种方式: 使用DDMS 命令
   在DDMS 中选择对应的process, 然后在Devices 按钮栏中选择Dump Hprof file, 保存即可
第三种方式: 通过代码的方式
   在android.os.Debug 这个class 中有定义相关的抓取hprof 的method.
如: public static void dumpHprofData(String fileName) throws IOException;
这样即可在代码中直接将这个process 的hprof 保存到相对应的文件中,注意这个只能抓取当时的
process.
如果想抓其他的process 的hprof, 那么就必须通过AMS 帮忙了。
可以先获取IActivityManager 接口,然后调用它的dumpheap 方法。具体的代码,大家可以参考
frameworks/base/cmds/am/src/com/android/commands/am/am.java 中的调用代码
抓取回hprof 后,就可以用hprof-conv 命令将DVM 格式的hprof 转换成标准的java 命令的hprof
   hprof-conv in.hprof out.hprof
然后使用如MAT 之类的工具进行具体的分析
 
9、bugreport
adb bugreport > bugreport.txt
 
10、kernel log(只有从当前时间起的很少的log)
cat proc/kmsg > kmsg.txt

11、其他

adb shell dumpstate //各类信息,比如进程信息,内存信息,进程是否异常,kernnel的log等
adb shell dumpcrash
adb shell dumpsys  //查询所有service的状态
 

ref:
https://blog.csdn.net/matthewei6/article/details/50596983
https://www.cnblogs.com/zhengtu2015/p/5134012.html
 
Android logcat命令详解
https://www.cnblogs.com/JianXu/p/5468839.html
 

解读Android LOG机制的实现
https://www.cnblogs.com/hoys/archive/2011/09/30/2196199.html

android adb命令 抓取系统各种 log的更多相关文章

  1. Android adb命令,linux中各种命令

    常用的ADB命令 1. 显示系统中全部Android平台: android list targets 2. 显示系统中全部AVD(模拟器): android list avd 3. 创建AVD(模拟器 ...

  2. 如何抓取崩溃的log日志

    4.手机录屏工具的推荐 Andriod:录屏大师,易录屏等等. iOS:AirPlayer,iTools. 5.如何抓取崩溃的log日志? android闪退获取日志方法: 1.下载adb工具包 2. ...

  3. Android ADB命令教程二——ADB命令详解

    Android ADB命令教程二——ADB命令详解 转载▼ 原文链接:http://www.tbk.ren/article/249.html       我们使用 adb -h 来看看,adb命令里面 ...

  4. 软件测试之adb命令-实际公司使用场景--今日log

    软件测试之adb命令-实际公司使用场景--今日log Dotest-董浩整理 1)可以看内存泄漏: 2)可以安装.卸载app--截图并提交bug: 3)可以通过抓app日志定位问题: 4)可以结合mo ...

  5. 一淘搜索网页抓取系统的分析与实现(3)—scrapy+webkit &amp; mysql+django

    图 scrapy+webkit: 如结构图③. scrapy不能实现对javascript的处理,所以须要webkit解决问题.开源的解决方式能够选择scrapinghub的scrapyjs或者功能更 ...

  6. 在Scrapy项目【内外】使用scrapy shell命令抓取 某网站首页的初步情况

    Windows 10家庭中文版,Python 3.6.3,Scrapy 1.5.0, 时隔一月,再次玩Scrapy项目,希望这次可以玩的更进一步. 本文展示使用在 Scrapy项目内.项目外scrap ...

  7. MacBook下配置android adb命令使用环境

    想在Mac下使用android adb命令,常用的两种配置方式: 在MacBook下配置adb命令环境(方法一) 1.下载并安装IDE (android studio) 人性化的安装,直接点击下一步下 ...

  8. 高通qxdm抓取sensor的log【学习笔记】

    高通qxdm抓取sensor的log 打开qxdm,打开设置界面,去掉其他无关的log,打开Log packets .Message packets的SNS的log 之后需要把端口打开,把端口打开之后 ...

  9. Android测试日志文件抓取与分析

    1.log文件分类简介 实时打印的主要有:logcat main,logcat radio,logcat events,tcpdump,还有高通平台的还会有QXDM日志 状态信息的有:adb shel ...

随机推荐

  1. Kafka 0.10问题点滴

    15.如何消费内部topic: __consumer_offsets 主要是要让它来格式化:GroupMetadataManager.OffsetsMessageFormatter 最后用看了它的源码 ...

  2. Linux下SVN使用

    转载:参考文章http://www.linuxidc.com/Linux/2011-09/42347.htm 1. 将文件checkout到本地目录     svn checkout path(pat ...

  3. numpy笔记—np.squeeze用法

    import numpy as np x = np.array([[[0], [1], [2]]]) print(x.shape) d = np.squeeze(x) # 从数组的形状中删除单维条目, ...

  4. Kruskal算法:最小生成树

    //Kruskal算法按照边的权值从小到大查看一遍,如果不产生圈(重边等也算在内),就把当前这条表加入到生成树中. //如果判断是否产生圈.假设现在要把连接顶点u和顶点v的边e加入生成树中.如果加入之 ...

  5. 第一节:从程序集的角度分析System.Web.Caching.Cache ,并完成基本封装。

    一. 揭开迷雾 1. 程序集准备 a.  需要给项目添加 System.Web 程序集. b.  需要给使用的地方添加两个引用. 2. 程序集探究      在对应的类中输入关键字 Cache,选中点 ...

  6. vue项目中安装使用echarts

    安装:cnpm install echarts -S (安装依赖并引入到 package.json) 官网安装说明:http://echarts.baidu.com/tutorial.html#%E5 ...

  7. CSS选择器之基本选择器

    一.通用选择器 选择器 * 匹配 所有元素 最低支持CSS版本 2 二.类型选择器 选择器 <元素类型> 匹配 所有指定类型的元素 最低支持CSS版本 1 三.类选择器 选择器 <类 ...

  8. windows 查看链接数

    windows 端口链接数  查看有效 链接数: netstat -an|find " |find "ESTABLISHED" /c /c 统计: 查看链接信息: 查看当 ...

  9. 列表控件QListWidget

    列表控件可以让我们以列表形式呈现内容,是界面更加有序美观.QListWidget列表控件应当与QListWidgetItem一起使用,后者作为项被添加入列表控件中,也就是说列表控件中的每一项都是一个Q ...

  10. FPN 学习笔记

    通常,利用网络对物体进行检测时,浅层网络分辨率高,学到的是图片的细节特征,深层网络,分辨率低,学到的更多的是语义特征. 1).通常的CNN使用如下图中显示的网络,使用最后一层特征图进行预测 例如VGG ...