自动提取Android Crash 日志
来源:互联网 发布:lookguard软件名 编辑:程序博客网 时间:2024/06/06 18:41
日志能给我们很多的信息,如果是我们可以看到的崩溃,我们会提取日志给开发查问题,但是 当我们跑自动化测试时,或者日志文件比较大时,我们希望能自动将日志信息提取出来,方便查看。
分析了下Android 的 crash 日志 “Exception”我们可以通过这个关键字来搜索,下面我贴下我的方法,当然还有很多方法。
我写了一个类来简单的封装了下
#!/usr/bin/env python# coding=utf-8import osimport reclass filters_log: def __init__ (self, dirs, errfilepath, wirt): self.dirs = dirs # log所在的文件夹路径 self.errfilepath = errfilepath # 存放log错误报告文件的文件夹路径 self.wirt = wirt # 是否要写错误报告 def get_log_path (self): cuns = 0 for root, dirs, files in os.walk (self.dirs): for name in files: filesPath = os.path.join (root, name) print name cun = self.read_log(filesPath) cuns += cun self.writ_errfile ('共查找到 %s 处' % cuns) print cuns return cuns def read_log(self, p): NullPointer = "Exception" count = 0 f = open(p, 'r') lines = f.readlines () for line in lines: if re.findall(NullPointer, line): l = lines.index(line) dd = lines [l] print dd d = os.path.basename (p) + " " + str (lines.index (line)) self.writ_errfile (d + " " + dd) count += 1 print str(count)+'-----------' print dd for i in range(10000): h = lines[l + i+1] zzz = r'(([0-9]{2}):){2}([0-9]{2})' Pattern = re.compile(zzz) arrary = Pattern.findall(h) if len(arrary) <= 0: print h self.writ_errfile(' '+h) else: break f.close() return count #将提前的信息写入一个文件 方便查看 def writ_errfile(self, string): if self.wirt == 1: wir = 0 errfile = "%serror.log" % (self.errfilepath) if not os.path.exists(errfile): wir = 1 fr = open (errfile, 'a') if wir == 1: fr.write ("logName line message") fr.write ('\n') fr.write(string) fr.close()
0 0
- 自动提取Android Crash 日志
- Android下快速提取ndk crash日志的命令
- Android crash 日志捕获
- Android crash 日志捕获
- Android crash 日志捕获
- android crash日志上报
- Android crash 日志 分析
- android crash日志捕获
- android crash 日志保存
- Android Crash日志收集
- Android Crash日志收集
- android开发之应用Crash自动抓取Log_自动保存崩溃日志到本地
- android开发之应用Crash自动抓取Log_自动保存崩溃日志到本地
- android开发之应用Crash自动抓取Log_自动保存崩溃日志到本地
- android开发之应用Crash自动抓取Log_自动保存崩溃日志到本地
- android开发之应用Crash自动抓取Log_自动保存崩溃日志到本地
- android开发之应用Crash自动抓取Log_自动保存崩溃日志到本地
- android开发之应用Crash自动抓取Log_自动保存崩溃日志到本地
- [模板][趟坑日志]的引用陷阱
- Wav文件格式简要分析
- 解决问题:关闭dialog并且刷新父页面(解决关闭dialog时弹出重试提示框)。
- POJ 2082 Terrible Sets(可怕的矩形)
- hive集群部署
- 自动提取Android Crash 日志
- MyBatis--延迟加载
- Skynet服务器框架(二) C源码剖析启动流程
- 小型http服务器
- java 分批次处理
- RxAndroid结合OkHttp实现图片下载、get、post请求
- html内容超出了div或p的宽度如何换行让内容自动换行
- Ubuntu下QT的安装详细教程
- CentOS 6.5安装VNCserver 并开启远程桌面