不同进程log占有量分析

如果中某个进程打印太多log,也会影响系统同性能和monkey煲机成功率。下文是针对具体进程log输出量统计,可以直观的了解到不同进程log输出情况。

获取不同级别TAG的行数和占用字节数

awk '{tag[$3]++;use[$3]+=length($0)} END{for(i in use) print use[i],tag[i],i}' android.log | sed 's:\([0-9]*.*[0-9].*[a-zA-Z]\).*[(].*:\1:g;s:\(.*\)[@].*:\1:g' | awk '{tag[$3]+=$2;use[$3]+=$1} END{for(i in use) print use[i],tag[i],i}' | sort -h -k 1 > result00.txt

运行结果

5769624 48880 D/home/widget/ActionBarAdapter
6114831 61812 D/home/item/CarouselItem
6332611 55556 D/imsg/IMsgDialogHelper
6494943 62393 D/TopActivityManager
6694584 2282 D/home/widget/MenuFloatLayerDataProvider
6799992 63806 D/Player/Lib/Data/CarouselChannelDetailPollingManager
6950450 47013 D/Player/PlayerFeatureProvider
7068796 34365 I/ActivityManager
7325373 41056 D/TVRecognizer
7450157 61561 D/EPG/home/BackgroundManager
7622807 25795 D/a71_ads_client
7752247 77479 D/home/DataRequestTaskExecutors
7871251 5067 D/TabProvider
8101481 41133 D/InputMethod.AbstractInputMethodImpl
8359583 63365 D/PlayerUtils/Observable<T
8712851 23647 D/Player/Lib/Data/CopyOfPlaylist
8851371 94252 I/System.out
9651028 19647 D/Player/Lib/Data/VideoProvider
9896787 31771 D/Detail/UI/DetailOverlay
10342407 24411 D/HistoryCacheManager
10879128 22641 D/Detail/UI/BasicInfoContent
10956838 116621 I/SearchHistoryEntryBaseItem
11175283 52572 D/AlbumDetail/UI/CtrlButtonPanel
12479057 106161 D/HiMW

去掉log级别,统计一个TAG的行数和字节数

 cat result00.txt | sed -e 's:\(.*[0-9]\).*[VIWDE][/]\(.*\):\1 \2:g' | awk '{tag[$3]+=$2;use[$3]+=$1} END{for(i in use) print use[i],tag[i],i}' | sort -h -k 1

运行结果:

392724 1815 TabBarClickPingback
394471 2033 Detail/Data/DetailAlbumLoader
404206 2770 HiMW
407643 2458 Player/EmptyJob
412830 3996 OnStateChangedListener-JNI
417321 1755 MenuFloatLayerClickPingback
428756 5258 KKVoiceKeyReceiver
429386 4208 Player/App/AdCountDownController
437202 1132 AlbumDetail/AlbumDetail/FetchSourceDetailInfoJob
449018 2598 EPG/album4/AlbumActivity
450081 4133 home/ActionBarLayout
451333 2523 InputMethodManagerService
456925 9325 CAI
460567 5074 ImageViewUtils
469070 6701 TelecomManager
476818 2709 Albumdetail/EmptyJob
481279 1295 SdkVideo-JNI
483321 5177 ContentWrapper
488405 5316 AlbumProvider
497924 4928 MultiSubjectVGridView
503705 3027 MultiSubjectVGridView

获取最多打印TAG中第一个字符串作为TAG的打印行数及字节数

grep -nE "/HistoryDbCache\(" android.log | awk -F"]" '{print $2}' | awk '{tag[$1]++;use[$1]+=length($0)} END{for(i in use) print use[i],tag[i],i}'  | sort -h -k 1 | sed -e 's:\([0-9]*[ ]*[0-9]*[ ]*\)(.*:\1:g' | awk '{tag[$3]+=$2;use[$3]+=$1} END{for(i in use) print use[i],tag[i],i}'  | sort -h -k 1

运行结果:

262494 374 put
407973 1316 getFromAlbum
691712 27252 update
1696960 29366 reload
2340701260 3191864 createInfoFromCursor

不同进程log占有量分析相关推荐

  1. Zygote进程启动流程分析

    文中的源代码版本为api23 Zygote进程启动流程分析 先说结论,zygote进程启动过程中主要做了下面这些事情: 启动DVM虚拟机 预加载部分资源,如一些通用类.通用资源.共享库等 启动syst ...

  2. modem (1)---手机主叫的信道流程与Modem Log简单分析

    手机主叫的信道流程与Modem Log简单分析 层三信令里看到建立RRCCMM层什么的到底是什么意思?建立这些层有什么用? 从协议栈的角度来说,RR属于接入层,而MM和CC都属于非接入层即NAS. R ...

  3. 浏览器层面优化前端性能(1):Chrom组件与进程/线程模型分析

    现阶段的浏览器运行在一个单用户,多合作,多任务的操作系统中.一个糟糕的网页同样可以让一个现代的浏览器崩溃.其原因可能是一个插件出现bug,最终的结果是整个浏览器以及其他正在运行的标签被销毁. 现代操作 ...

  4. Gmail进程信息转储分析工具pdgmail

    Gmail进程信息转储分析工具pdgmail 进程信息转储(Process Memory Dump)是数字取证的重要方式.通过分析对应进程的信息转储,可以获取大量的信息.Kali Linux提供一款专 ...

  5. Oracle读取log日志,使用log miner 分析oracle日志

    oracle db提供了一个分析日志包logmnr logminer 工具的使用 -------对redo log 进行挖掘,找出在某个时间点所作的DDL 或DML 操作(包括:时间点.datablo ...

  6. Android系统的心脏-Zygote进程启动流程分析

    简介: Android中,Zygote是整个Android系统的核心进程,是Android系统的心脏.所有的Android应用程序,包括Android框架层所在的进程system_server,都是由 ...

  7. Android WIFI log基本分析流程

    同学,别退出呀,我可是全网最牛逼的 WIFI/BT/GPS/NFC分析博主,我写了上百篇文章,请点击下面了解本专栏,进入本博主主页看看再走呗,一定不会让你后悔的,记得一定要去看主页置顶文章哦. 1.W ...

  8. 父进程为1号进程(ppid=1)的僵尸进程处理和分析

    在做稳定性测试时,发现某进程日志停了,也没有退出日志,也没有别的,就一顿操作,然后把进程搞成了僵尸进程 defunct .(疑似是 gdb attach 时,pkill -9 该线程了) 试着 kil ...

  9. python将Linux下使用top命令获取的进程信息进行分析做可视化展示

    python将Linux下使用top命令获取的进程信息进行分析做可视化展示 版本 版本 作者 日期 备注 v1.0 ZY 2020.11.10 初版完成 文章目录 python将Linux下使用top ...

最新文章

  1. 利用XtraBackup做mysql不停机重做主从复制
  2. gitignore完整使用方法
  3. LeetCode Flatten Binary Tree to Linked List (dfs)
  4. python unix时间戳转换成时间_关于python:将unix时间戳字符串转换为可读日期
  5. azkaban mysql参数_azkaban参数详解
  6. python 在不同层级目录import 模块的方法
  7. 第四届CocoaChina开发者大会官网上线
  8. vs2013编译驱动错误-Inf2Cat,signability test failed
  9. datax(3): win环境cmd乱码
  10. 屏幕录像专家录制的内容中有“未注册”字样怎么办
  11. OKR案例: 回顾/复盘会流程模板
  12. python画椭圆形_如何绘制Python中的半椭圆?
  13. 微信内置浏览器缓存清理 微信缓存清除 清除微信里的h5缓存
  14. 读《天才在左,疯子在右》01--偷取时间
  15. 《代码本色:用编程模拟自然系统》作者Daniel Shiffman访谈问题有奖征集
  16. 笔记本电脑都有光驱吗?
  17. mysql数据库从入门到高级
  18. MySql安装与使用
  19. 中石油12203-Darker and Darker
  20. 软件本身呢对shellcode 检查 SEH Exploit学习

热门文章

  1. 跳频通信系统误码率matlab仿真,输出误码率
  2. 开发游戏陪玩平台系统,如何实现分布式存储?
  3. 基于STC89C52的GY-906智能温度计
  4. Python爬虫学习3----xpath爬取哔哩哔哩排行榜
  5. 服务器如何开多个虚拟机,服务器运行多个虚拟机
  6. iOS蓝牙中的进制转换
  7. QQ 聊天机器人小薇 2.0.0 发布!
  8. [Origin]在book单元格中添加上划线等
  9. 黄章和魅族“三剑客”不得不说的故事
  10. SAP可以创建预留的移动类型