android 常规log的查看与抓取

news/2024/7/24 9:30:31 标签: android

ProtoLog开关

在代码中我们经常看见ProtoLog打印的log,如下:

ProtoLog.i(WM_DEBUG_ANIM, "Animation start delayed for %s", mAnimatable);

这种log正常情况不会显示,因此我们需要打开开关,其格式为:
adb shell wm logging enable-text [代码中对应的TAG]
我们这段代码的TAG是WM_DEBUG_ANIM,因此通过命令adb shell wm logging enable-text WM_DEBUG_ANIM打开log开关

logcat抓取log

# 抓取普通的andorid log
adb shell logcat > log.txt
# 仅抓取events log
adb shell logcat -b events > log.txt
# 抓取所有类型log
adb shell logcat -b all > log.txt

# 根据关键字抓取log,-i可以忽略大小,-e可以添加多条关键字,如下:
adb shell logcat -b events | grep -ie "关键log1" -ie "关键log2"> log.txt

events.log中对应代码查找

events log对应代码的规律是:
events log开头的字段,比如wm_xxx
则对应的代码可以通过 grep 抓取 writeWmxxx 找出是在哪里打印的该events log

例如:
应用走到onresume生命周期的log
wm_on_resume_called: [223605563,com.tencent.mm.ui.LauncherUI,RESUME_ACTIVITY,10]

EventLogTags.writeWmOnResumeCalled(mIdent, getComponentName().getClassName(), reason);

通知cancel的log
notification_canceled: [0|com.tencent.mm|40|null|10218,8,19980,19980,7720,-1,-1,NULL]

EventLogTags.writeNotificationCanceled(canceledKey, reason,
                r.getLifespanMs(now), r.getFreshnessMs(now), r.getExposureMs(now),
                rank, count, listenerName);

http://www.niftyadmin.cn/n/5336165.html

相关文章

【设计模式】腾讯二面:自动贩卖机/音频播放器使用了什么设计模式?

状态模式是什么? 状态模式,也被称作状态对象模式,是一种行为设计模式。 当一个对象的内在状态改变时,允许改变其行为,这个对象看起来像是改变了其类。 它让对象在其内部状态改变时改变自己的行为。外部调用者无需了…

防范水坑攻击:了解原理、类型与措施

水坑攻击是一种常见的网络攻击方式,它利用了人类在互联网上的行为习惯,诱导用户访问恶意网站或下载恶意软件,从而获取用户的个人信息或控制用户的计算机系统。本文将介绍水坑攻击的原理、类型和防范措施。 一、水坑攻击的原理 水坑攻击&…

rabbitmq的介绍、使用、案例

1.介绍 rabbitmq简单来说就是个消息中间件,可以让不同的应用程序之间进行异步的通信,通过消息传递来实现解耦和分布式处理。 消息队列:允许将消息发到队列,然后进行取出、处理等操作,使得生产者和消费者之间能够解耦&…

广东省考报名相片上传成功了,必须<30kb

(一)报名时间 2024年1月16日9︰00至22日16︰00。 (二)报考注册 报考者登录广东省公务员考试录用管理信息系统(https://ggfw.hrss.gd.gov.cn/gwyks/index.do),用本人身份证号码进行注册,在注册前应仔细阅读本公告、全省各级机关招录职位表(附件1)和报考指…

端口映射的定义、特点、场景、实例、常见问题回答(Port Mapping)

目 录 一、端口映射(Port Mapping) 二、端口映射应用场景(什么时候用到端口映射) (一)、使用端口映射的条件 (二)使用端口映射的具体场景 三、端口映射技术的特点 …

服务器使用中容易遇见的问题和处理方法

服务器支撑着整个企业的信息数据,对公司的信息储存、业务开展、正常运作等等环节都具有着至关重要的意义。然而,服务器在日常运行过程中,由于其复杂的硬件结构、繁琐的运行原理,经常会出现一些大大小小的问题困扰着各位。下面精心…

redisson的延时队列机制简述

概述 业务中经常会遇到一些延迟执行的需求;通常想到的都是rabbitmq或者rocketmq的延迟消息; 但是系统中不一定集成了mq,但为了控制分布式下的并发,一般redis都是有集成的; redis的key过期监听那个时间不准确&#xff…

第135期 一周游历(上)(20240120)

数据库管理135期 2024-01-20 第135期 一周游历(上)(20240120)1 PolarDB开发者大会2 工作3 Oracle甲骨文4 Oracle ACE总结 第135期 一周游历(上)(20240120) 作者:胖头鱼的鱼缸(尹海文) Oracle AC…