[发明专利]一种崩溃聚合方法、装置、介质和设备有效
申请号: | 201910728586.6 | 申请日: | 2019-08-08 |
公开(公告)号: | CN110489345B | 公开(公告)日: | 2023-08-25 |
发明(设计)人: | 王凯 | 申请(专利权)人: | 北京字节跳动网络技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F11/34;G06F11/30 |
代理公司: | 北京国昊天诚知识产权代理有限公司 11315 | 代理人: | 张敏 |
地址: | 100041 北京市石景山区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 崩溃 聚合 方法 装置 介质 设备 | ||
本公开提供了一种崩溃聚合方法、装置、介质和设备,其中,崩溃聚合方法包括:获取崩溃堆栈,所述崩溃堆栈包括由关键字分成的多层结构;从所述崩溃堆栈中提取指定特征信息,所述指定特征信息包括异常类型信息、解释信息、崩溃类信息、崩溃方法信息以及崩溃文件名信息;将所述指定特征信息输入指定函数,计算所述崩溃堆栈的特征值;将相同特征值的所述崩溃堆栈进行归类。本方法通过将崩溃堆栈进行解析分类,使得当不同的崩溃堆栈反映的是同一种代码错误时,可以先把不同的堆栈聚合到一起展示,当不同的崩溃堆栈反映的实际是不一样的错误原因时,不能因为堆栈相似,而把他们聚合到一起。本方法减轻了开发人员的工作量,提高了程序开发效率。
技术领域
本公开涉及计算机技术领域,具体而言,涉及一种崩溃聚合方法、装置、介质和设备。
背景技术
应用程序的崩溃率是衡量一个应用程序质量的关键指标之一,为了解决线上应用程序的崩溃问题,我们需要收集应用程序在用户手机上的崩溃堆栈,然后回传给开发人员进行问题分析。但是因为系统版本和使用环境的不同,同一个错误代码产生的崩溃堆栈可能是不同的,如果将所有的崩溃堆栈都直接反馈给开发人员,数据量是非常庞大的。为了减少开发人员的工作量,我们需要在收到崩溃堆栈后,先对堆栈进行处理,当判断出不同的崩溃堆栈反映的是同一个代码问题时,应该把这些不同的崩溃堆栈进行聚合展示,以减少开发人员人工查验的工作量。
本公开的目的在于提供一种崩溃聚合方法、装置、介质和设备,能够解决上述提到的至少一个技术问题。具体方案如下:
根据本公开的具体实施方式,第一方面,本公开提供一种崩溃聚合方法,包括:
获取崩溃堆栈,所述崩溃堆栈包括由关键字分成的多层结构;
从所述崩溃堆栈中提取指定特征信息,所述指定特征信息包括异常类型信息、解释信息、崩溃类信息、崩溃方法信息以及崩溃文件名信息;
将所述指定特征信息输入指定函数,计算所述崩溃堆栈的特征值;
将相同特征值的所述崩溃堆栈进行归类。
可选的,所述从所述崩溃堆栈中提取指定特征信息,包括:
从最底层的崩溃堆栈中提取指定特征信息;或
从每一层的崩溃堆栈中分别提取指定特征信息。
可选的,所述从所述崩溃堆栈中提取指定特征信息,包括:
从所述崩溃堆栈中提取异常类型字符串作为所述异常类型信息。
可选的,所述从所述崩溃堆栈中提取指定特征信息,包括:
从所述崩溃堆栈中提取解析字符串;
通过正则表达式表替换所述解析字符串中的环境信息;
将替换后的解析字符串作为所述解析信息。
可选的,所述从所述崩溃堆栈中提取指定特征信息,包括:
从上到下遍历所述崩溃堆栈的代码行;
查找所述崩溃堆栈的代码行是否存在非系统类代码行;
当首次查找到所述代码行是非系统类代码行时,提取所述代码行的崩溃类信息、崩溃方法信息以及文件名信息。
可选的,还进一步包括:
当未查找到非系统类代码行时,提取所述崩溃堆栈的第一代码行的崩溃类信息、崩溃方法信息以及文件名信息。
可选的,所述将所述指定特征信息输入指定函数,计算所述崩溃堆栈的特征值,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京字节跳动网络技术有限公司,未经北京字节跳动网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910728586.6/2.html,转载请声明来源钻瓜专利网。