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. VirtualBox设置共享文件夹

    前提是已经正确安装增强工具,在安装增强工具时,没有faile的,全部done 1.添加共享文件夹(已经在lmg下创建过目录 /mnt/bdshare ) sudo mount -t vboxsf Ba ...

  2. HDU - 3980 Paint Chain(SG函数)

    https://vjudge.net/problem/HDU-3980 题意 一串长度为n的柱子,每个人只能给连续的珠子涂色,涂过的不能再涂,不能涂的人就输了,问最后谁获胜. 分析 第一个人先涂m个, ...

  3. vue实现一个简单的选项卡

    用vue来实现一个小的选项卡切换,比之前要简单.方便很多. <!DOCTYPE html> <html lang="en"> <head> &l ...

  4. 序列化时提示There was an error reflecting type 'System.Collections.Generic.List`1

    序列化xml文件到List中,非win10下出现了这个错误,但是在win10下正常.经过仔细的研究,发现是序列化工具类不能使用Static.去掉Static即可.

  5. 18. Spring Boot 、注册Servlet三大组件Servlet、Filter、Listener

    由于SpringBoot默认是以jar包的方式启动嵌入式的Servlet容器来启动SpringBoot的web应用,没有web.xml文件 public class MyServlet extends ...

  6. 基于802.11Fuzz技术的研究

    转自安全客 关于无线的Fuzz最开始接触了解时,国内基本毛线都搜不到.经过几个月的资料搜集和学习,将大约全网的fuzz资料整理翻译分析并读懂写下,就为填补国内空白,也希望无线爱好者能多多交流. 在各个 ...

  7. jdk学习之如何调试jdk

    自从sun被oracle收购后,在oracle下载的jdk使用F5进入调试jdk的方法就不行了,这对于想看jdk的源码的小伙伴是一个暴击(oracle在编译rt.jar时去除了调试信息): 这不得不鼻 ...

  8. OpenCV入门(2)- Java第一个程序

    1.下载和安装OpenVC环境 从官方连接 https://opencv.org/releases.html 下载Windows的安装包 下载下来的就是一个压缩包,安装解压后,对Java开发有效的目录 ...

  9. loadrunner函数解密之web_reg_find

    loadrunner工具的使用,最关键的在于3个地方: A:脚本的编写 B:场景设计 C:性能测试结果分析 其中难度比较大的第一步是:编写脚本,有很多人对于loadrunner里面的各种函数使用的并不 ...

  10. AJAX请求头Content-type

    发送json格式数据 xhr.setRequestHeader("Content-type","application/json; charset=utf-8" ...