有没有熟悉这样的场景:
时间已过十一点,空荡荡的办公室只剩自己孤身一人。陪你伏案忙碌的只有电脑风扇被迫营业的“嗡嗡”声, 窗外的夜正黑得带劲,仿佛巨兽的口吞噬自己的无奈。
天性善良不善言辞的你,容易被人颐指气使,加班对你来说是家常便饭。
作为一名码农,“我到底哪里错了,我需要怎么解决?”是我的座右铭。但是,解决问题的过程需要耐心和细心,需要在大文件日志中寻找问题线索,耗费巨量的时间和精力。因此,加班分析并解决问题是常有的事情。
有时候想,如果分析日志过程能高效,是不是就可以减少无意义的班?节约出来的时间老婆孩子热炕头岂不美哉。
本文介绍的 Notepad++ 和 AnalysePlugin 绝妙组合,在分析大文件日志上大放异彩,简直是“神兵利器”,特别对初入职场的码农,文字或者数据统计相关从业人员特别有用。职场老手应该都会有自己的独家秘籍,见仁见智,没有标准答案,能达成目标即好方法。文章是本人经验总结,不喜勿喷,欢迎多多留言关注,谢谢~~~
话不多说,本文重点讲解如何使用 Notpad++ 配合 AnalysePlugin 分析大文件日志,找到目标日志信息。
存在问题
大文件日志分析,我们需要一次性搜索多个关键字,将面临两个问题。
一. 多日志文件,不知道关键字在哪些文件里
面对几个 GB 的大文件日志,例如安卓系统应用出现无响应问题时,系统会自动生成多个异常跟踪文件并自动保存,导致存在过多的日志文件。
如何找到关注日志在哪个文件呢?
通常的过程是这样的:
for(int i = 1 ; i <= 日志文件数目;++i){
1. 打开单个日志文件
2. bool result = ctrl + F 搜索目标关键字
if(result){
3. 保存。
}
4. 获取保存所有带目标关键字日志
for(int j = 1 ; j <= 目标关键字日志数目;++j){
5. 打开初步文件看是否存在有用信息,定位问题。
}
}
是不是有点像大海捞针的感觉?
打开所有的日志文件,然后一个个查看是不是目标日志文件。该方法肯定可行,无非就是多花点时间。
只要方法是对的,总可以完成。然而,你有没有想过,凭啥这种“不用脑子”的体力活要你干?爷的时间就这么不值钱吗?有这时间刷刷剧,打把游戏不香吗?
二.无法有重点的分析日志
举个例子,我们需要在日志文件中查找 "onLayout"、"SQLiteLog"、"java.lang.RuntimeException",以定位问题。在关注日志时,我们需要注意以下几点:
- 如果应用程序崩溃了,我们会重点关注 "java.lang.RuntimeException"。
- 如果没有发现 "RuntimeException",则可能会关注与 "SQLiteLog" 相关的警告。
- 如果甚至连系统警告都没有,那么只能查看与应用程序相关的 "onLayout" 日志。
通常的做法是直接搜索关键字,这样做虽然可行,但给人的感觉不够直观。由于屏幕小且高度近视,搜索结果都是一堆黄色的浆糊,无法有效区分日志级别,不利于重点突出地分析问题。
如下在Notepad++中的搜索结果,只要是关键字都是黄色。
一般的处理思路是,将就着看就行,别没事找事。被子反正第二天会睡不好,索性不叠了~~~,哈哈!
不过,码农应该都有洁癖,长期沉浸在祖传的“屎山”中,增删改查,谁不都会说:“我去,垃圾代码!”如果是我,我会怎么怎么做。
看吧,是个人都不会将就,如果有更好的选择
文章来源: 博客园
- 还没有人评论,欢迎说说您的想法!