13
1

Logcat 的分析及使用方法

  • Upload
    kaiser

  • View
    80

  • Download
    0

Embed Size (px)

DESCRIPTION

Logcat 的分析及使用方法. Android logcat 的分析及使用方法. 简介 命令格式 实现细节 常用方法 注意事项. 命令格式. Usage: logcat [options] [filterspecs] filterspecs are a series of [:priority]. 实现细节. 常用方法. 傻瓜方式 logcat Logcat –s 尽量避免使用 非现场 debug ,请一定不要使用这种方法打印 trace. 常用方法. 提供给研发分析 logcat –v threadtime - PowerPoint PPT Presentation

Citation preview

Page 1: Logcat 的分析及使用方法

1

Page 2: Logcat 的分析及使用方法

Android logcat的分析及使用方法简介命令格式实现细节常用方法注意事项

2

Page 3: Logcat 的分析及使用方法

命令格式Usage: logcat [options] [filterspecs]

filterspecs are a series of <tag>[:priority]

Page 4: Logcat 的分析及使用方法

实现细节

64K 64K 64K 256K RingBuffer

main system radio events

/dev/log/xxx

logcatwrite_to_log

Page 5: Logcat 的分析及使用方法

常用方法傻瓜方式

logcatLogcat –s <filter>尽量避免使用非现场 debug ,请一定不要使用这种方法打印 trace

5

Page 6: Logcat 的分析及使用方法

常用方法提供给研发分析

logcat –v threadtimelogcat –v threadtime –b eventslogcat –v threadtime –b radio

6

Page 7: Logcat 的分析及使用方法

常用方法只看某几个 tag 的 trace

Logcat –s EGL dalvikvmLogcat –s EGL:W dalvikvm:E

7

Page 8: Logcat 的分析及使用方法

注意事项尽量避免在串口中使用

串口输出速度较慢,如果 trace 过多,输出的速度可能会跟不上输入

串口输出对系统影响大 中断形式 中断时间较长 (ms 级别 )

Trace performance 可能会很不准由于对系统冲击较大,可能造成应用行为异常,误报

bug

8

Page 9: Logcat 的分析及使用方法

注意事项Log 的输出顺序,有可能和实际不一致

默认输出的是 main 和 system 两个 buffer 中的trace

9

Page 10: Logcat 的分析及使用方法

注意事项避免冗余的 Trace 信息

Logcat 自带了 时间、进程、线程信息无需额外加 trace 打印

10

Page 11: Logcat 的分析及使用方法

Native 代码中,避免 LOGX 无法输出 trace

#undef LOG#include <cutils/log.h>

LOGD(xxxxx)

11

Page 12: Logcat 的分析及使用方法

注意事项熟悉一些常见的系统信息

比如开机过程中的输出记住常见信息,在异常时可以帮助快速定位

12

Page 13: Logcat 的分析及使用方法

Thanks !

13