结构化Log分析

Android开发时Log对问题分析是很重要的。如果APK比较简单,那么用文本编辑器或者Android Studio中自带Log查看器就可以了。但是如果程序比较复杂,各个模块都添加了Log, 如果这时再用文本编辑器来查看Log, 往往就会一头雾水了。特别是对于Anroid系统开发者,Val报了一个Bug后,附带的Log都是整个系统的,往往都是上百兆的。

用文本或者AndroidStudio的Log查看器,只能查看或者简单查找。而VisualLog提供了结构化分析Log的工具,简单的说就是,VisualLog会把Log编程一个数据库,然后可以进行结构化查询与分析,可以按进程,Tag,时间,关键字进行查找,也可以快速按进程或Tag过滤生成子Log视图。同时由于Log编程一个数据库,还可以使用VisualLog提供的脚本框架,方便的编写Log的分析程序。

VisualLog基本用法

1).捕获Log

​ VisualLog中点击菜单 文件->Logcat->打开默认Logcat 或者另外新建一个Logcat数据库文件

​ 连接上手机

​ 在Logcat的左侧工具栏面板,点击捕获Logcat按钮capture.png

​ 在Logcat中就可以看到,Logt打印了

2).导入Log

​ 在Logcat的左侧工具类面板,点击菜单按钮menu.png;

​ 执行导入文件,选择log文件并导入

​ 对于MTK平台Log, 往往有多个文件,可以执行导入Logcat目录,并选择要导入的Log文件,QTrace会完成文件的导入,并对Log进行排序。

3).查看Log

logcat.png

  • VisualLog中,对不同进程的Log都有用不同的颜色进行区分。对于Android系统Log, 是所有程序的log都放在一起的,用这个颜色区分,可以让我们只关注相关进程的Log.

  • VisualLog中可以对Log设置书签(快捷键Ctrl+F2), 设置了书签的Log背景为淡黄色。

  • VisualLog支持解析event log, event log就是像[99,4262,320]这样的一堆数字,无法直接看出意思的,鼠标放到对应的event log上,就会弹出event log各字段的含义

  • VisualLog支持为log添加备注,双击Log, 在Log的开头编辑注释。

    remark.png

  • VisualLog可以方便的选择拷贝Log。 双击Log, 然后选择Log中的文本

  • VisualLog会分析pid,得到Pid对应的进程名然后显示。

Log高级功能

1).生成只包含某个进程的Log子视图

选择一条Log

执行右键菜单"过滤LogView"->“添加PID条件”, 点击按钮“在窗口显示”

filter_condition.png

这样pid为768的log都会显示到一个窗口中

当然还可以用tag,时间,log中的关键字来编辑更加复杂的过滤条件,来生成Log子视图.

2).搜索Log

在Logcat中,按Ctrl+F弹出搜索框,可以搜索对应的Log.

search_log.png

如果点击“显示LogView”, 也会将搜索结果Log显示到一个Log子视图中。跟上一小节的结果一样。

Log脚本分析

VisualLog为处理Log提供了较多的脚本,点击 “右键菜单->脚本”, 可以选择对应的脚本,并执行。

下面列几个比较常用的脚本。解决脚本可以快速的分析出问题,并将一些数据可视化,可以让程序员更加快速的找到问题。同时资深程序员也可以将经验写成脚本,用于帮助一般程序员的分析问题。

1.分析Log

点击右键菜单->脚本->分析Log

analyze_log.png

选择要执行的脚本,比如"Exception", 点击“运行脚本”, 就会找出所有Exception相关的Log.

analyze_exception.png

2.MemoryGC分析(内存回收分析)

通过对MemoryGC相关的Log进行分析,可以分析内存泄漏等问题。

右键菜单,执行 脚本->MemoryGC图表

memorygc.png

上图这个例子:占用内存Occupy持续变大,这种情况很有可能出现内存泄漏。

另外还需要关注Paused Time,如果Pasued Time太大,那么就可能出现卡顿情况。

3.数据图表化分析

很多Log带有数据,比如电池电量,内存数据,时长, 计数,以及各种Sensor的值, 等等。如果能将这些数据图表化,那么往往就能一眼看出问题。

这里以电池信息为例,来说明下"数据图表"脚本的用法

如下是电池信息的Event log

batterylog.png

如果直接分析,很难看出电池的变化情况。

选择一条电池Log, 点击右键菜单 “脚本->数据图表”

点击按钮“从当前Log生成”, 这样自动完成数据图表的的分析设置。

chartsetting.png

图表结果如下:

chart.png

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值