android抓取日志,Android抓取所有日志
总有些时候我们会遇到非必现场景,若未及时抓取日志,可能为时已晚
抓取日志
抓取Logcat日志
这个是最简单的,使用-f重定向到一个文本文件即可,-v threadtime则显示详细时间和进程
# for logcat
{
log -t logcat_all "start logcat to file: $logcat_file"
/system/bin/logcat -v threadtime -f $logcat_file
} &
抓取Kmsg日志
通过抓取/proc/kmsg来完成
# for kmsg
{
log -t logcat_all "start kmsg to file: $kmsg_logfile"
cat /proc/kmsg >$kmsg_logfile
} &
抓取Top日志
通过抓取Top可以看到系统运行时,占用CPU的情况等等
# for top
{
while busybox true; do
top_newtime=$(/system/bin/date +%F_%H-%M-%S)
top_logfile=$logcat_dir/top_${top_newtime}.log && > $top_logfile
log -t logcat_all "start top to file: $top_logfile"
# 仅保留5个top日志文件
# 5*100*3=25分钟内的Top信息,避免Top日志文件过大
busybox rm -f $(busybox ls -1t ${logcat_dir}/top_* | busybox tail -n +6)
for n in $(busybox seq 1 100) ; do
# 每3秒打印一次top信息,并加入时间显示
top -m 5 -d 3 -t -n 1 | busybox awk '{now=strftime("%Y-%M-%d %T "); print now $0}' >>$top_logfile
echo >>$top_logfile
done
done
} &
为了方便分析结果,这里添加了详细时间,同时限定了Top输出大小(避免SD卡占用过快)
抓取vmstat日志
通过抓取vmstat日志,可分析的系统信息就更多了
# for vmstat
{
while busybox true; do
log -t logcat_all "start vmstat_ to file: $vmstat_logfile"
vmstat_newtime=$(/system/bin/date +%F_%H-%M-%S)
vmstat_logfile=$logcat_dir/vmstat_${vmstat_newtime}.log && > $vmstat_logfile
busybox rm -f $(busybox ls -1t ${logcat_dir}/vmstat_* | busybox tail -n +6)
/system/bin/vmstat -d 3 -n 100 | busybox awk '{now=strftime("%Y-%M-%d %T "); print now $0}' >$vmstat_logfile 2>&1
done
} &
同时也添加了详细的时间输出,方便分析
开机运行
在init.rc添加一个Service,当系统已正常启动完成时,执行抓取日志
service logcat_all /system/bin/logcat_wrapper.sh
class main
disabled
oneshot
on property:dev.bootcomplete=1
start logcat_all
其中,logcat_wrapper.sh内容如下:
#!/system/bin/sh
{
/system/bin/busybox nohup /system/bin/logcat_all.sh > /dev/null 2>&1 &
} &
使用nohup执行,避免脚本被杀死,而logcat_all.sh则见此链接 logcat_all.sh
android抓取日志,Android抓取所有日志相关推荐
- 使用Burpsuite抓取IOS,Android(安卓)手机app数据
前言 Burp Suite是用于Web应用安全测试.攻击Web应用程序的集成平台,它将各种安全工具无缝地融合在一起,以支持整个测试过程中,从最初的映射和应用程序的攻击面分析,到发现和利用安全漏洞. 之 ...
- android asynctask异步处理抓取网页,Android处理异步耗时任务,AsyncTask使用教程
原文链接:http://www.jufanshare.com/content/124.html 本教程附Demo:https://gitee.com/qwertiddler/AsyncTask.git ...
- 使用DDMS抓取安卓APP的奔溃日志
使用DDMS抓取安卓APP的奔溃日志 一.什么是DDMS DDMS 的全称是Dalvik Debug Monitor Service,是 ...
- 嘘,我已经瞒着开发解锁APP日志文件抓取及分析啦!
------·今天距2020年87天·------ 这是ITester小栈第49次推文 大家好,我是coco小锦鲤 经过之前的APP系列 我们知道了APP的测试流程 也列举了APP通用测试用例 还解答 ...
- 抓取移动端应用的崩溃日志
1.手机录屏工具的推荐 Andriod:录屏大师(点击即可下载),易录屏等等. iOS:AirPlayer(点击即可下载),iTools(点击即可下载)等等. 2.如何抓取崩溃的log日志? and ...
- tcpdump抓包,Android抓包不用设置代理
使用方法 平常我们抓包都是用fidder,charles这些软件进行抓包,但是使用这些软件抓包都需要设置代理,手机还好,但是对于电视,机顶盒等一些Android设备可能设置中没有这些选项怎么进行抓包呢 ...
- Android安卓进阶之——一文带你了解抓包和反抓包
今天主要跟大家介绍一下Android的抓包和防止抓包 介绍两款抓包工具,Profiter和Charles. 工具环境: Android Studio 4.2.2 手机Google Pixel 3XL ...
- 四、小程序|App抓包(四)-Tcpdump抓取手机数据包分析
小程序|App抓包(四) Tcpdump抓取手机数据包分析 一.环境需求: 1.手机需要root 2.电脑上安装SDK(建议安装android studio)也可单独安装SDk也行 下载地址 : ht ...
- Wireshark使用(捕获过滤器、显示过滤器、TCP交互抓包示例、抓取本地回环数据包等)
1.捕获过滤器规则 1.1 作用 捕获过滤器在开始捕捉之前设置,用于从源头控制被过滤的包内容,仅符合规则的包会被捕获并记录进捕获日志文件. 1.2 语法规则 字段:[Protocol][Direc ...
最新文章
- 人工智能在网络贷款中鲜为人知的事
- mysql物理文件组成
- java泛型的泛型_Java 泛型总结(一):基本用法与类型擦除
- APP-V与RemotoAPP
- mysql group by与order by的研究--分类中最新的内容
- 如何检查私钥和公钥是否配对_如何检查家具是否有臭虫
- SpringBoot 跨域请求
- 10-1 channel
- 前景检测算法(十三)--KDE2000
- 计算机应用基础(专)(专22春) (2)
- [数据挖掘笔记01] 关联规则Apriori算法
- 一文读懂京东商城发展史
- 倍福 ton_b%C3%A9ton野蛮或野蛮
- 给每一辆车配上“×××”,老牌安企高新兴的交通新作
- 红包大战不再是两马战,内容平台为何成为新生力量?
- RNA-Seq质控工具RseQC安装使用
- 云主机1元简直就不是骗人的,大家不要上当受骗了呢
- 腾讯,竞争力 和 用户体验
- EAS BOS 单据开发 自定义枚举+下拉列表
- python爬虫知乎点赞_Python爬虫爬取知乎小结
热门文章
- usermod -a -G group1 user1
- eax,ebx,ecx,edx,esi,edi,ebp,esp寄存器的作用
- 浅谈JdbcDaoSupport
- python1到100奇数和_python计算1~100的和,1~100奇数的和,1~100偶数的和,一条代码求1~100的和...
- linux系统安装驱动rtl8188eu,rtl8188eu_USB_linux RTL8188EU驱动源码
- 视频文件损坏无法播放怎么修复?
- 用时间做种子生成随机数
- 大学生企业计算机应用能力需求调研,五个专业计算机能力需求调研分析论文
- 计算机上的mac是什么意思啊,Mac版是什么意思,Windows版是什么意思?
- img是什么格式的文件