一种标识崩溃的方法、装置和系统制造方法及图纸

技术编号:11171771 阅读:75 留言:0更新日期:2015-03-19 13:06
本发明专利技术实施方式提出了一种标识崩溃的方法、装置和系统。方法包括:根据崩溃时的异常码和堆栈第一结构信息生成基本标志;根据所述异常码和该崩溃时的堆栈第二结构信息生成附加标志,其中所述第二结构信息包含堆栈第一结构信息以及对应于所述堆栈第一结构信息的函数地址信息;发送所述基本标志和附加标志。本发明专利技术实施方式可以提高对崩溃的准确标识率,并增加修复问题的数量。

【技术实现步骤摘要】
一种标识崩溃的方法、装置和系统
本专利技术实施方式涉及信息处理
,更具体地,涉及一种标识崩溃的方法、装 置和系统。
技术介绍
英文单词bug本意是臭虫、缺陷、损坏等意思。现在人们将在电脑系统或程序中隐 藏着的一些未被发现的缺陷或问题统称为漏洞(bug),各种漏洞经常能造成应用程序崩溃 (crash)。 很多应用程序在崩溃时都会收集一些信息,产生错误报告,用户可以选择将错误 报告发送给后台服务器。后台服务器接受所有应用程序上传的错误报告数据,将这些数 据存储到数据库,从而开发人员可以从中挖掘信息,以帮助他们定位崩溃问题,从而解决程 序的崩溃问题。如果应用程序有庞大的安装用户量(百万、千万、甚至亿级),那么一个漏洞 造成的崩溃次数将非常巨大,为了避免重复数据的收集,通常对每个漏洞生成唯一的标志 (Signature),服务器可以根据标志作为过滤条件来判断是否是重复数据,这样既减轻服务 器的存储负担,也提高开发者处理重复问题的效率,同时也可以根据标志来反馈对应的解 决方案给用户。 理想的标志生成算法应该严格地符合一个正交原则:一个漏洞对应于一个标志, 而且一个标志对应于一个漏洞。但是,好的标志生成算法仍然是一个开放性问题。在现有 技术中,目前通常的错误报告处理系统是基于单标志机制的,即应用程序生成单个标志用 来表示漏洞。然而,单个标志以标识漏洞通常是有误差的,很难准确细化区分漏洞,从而降 低了对漏洞的准确标识率。而且,单个标志无法及早地暴露一个标志对应多个漏洞的情况。
技术实现思路
本专利技术实施方式提出一种标识崩溃的方法,从而提高对崩溃的准确标识率。 本专利技术实施方式提出一种标识崩溃的装置,从而提高对崩溃的准确标识率。 本专利技术实施方式提出一种标识崩溃的系统,从而提高对崩溃的准确标识率。 本专利技术实施方式的具体方案如下: 一种标识崩溃的方法,该方法包括: 根据异常码和堆栈第一结构信息生成基本标志; 根据异常码和堆栈第二结构信息生成附加标志,其中所述第二结构信息包含堆栈 第一结构信息以及对应于所述堆栈第一结构信息的函数地址信息; 发送所述基本标志和附加标志。 一种标识崩溃的装置,该装置包括基本标志生成单元、附加标志生成单元和标志 发送单元,其中: 基本标志生成单元,用于根据异常码和堆栈第一结构信息生成基本标志; 附加标志生成单元,用于根据异常码和堆栈第二结构信息生成附加标志,其中所 述第二结构信息包含堆栈第一结构信息以及对应于所述堆栈第一结构信息的函数地址信 息; 标志发送单元,用于发送所述基本标志和附加标志。 一种标识崩溃的系统,包括客户端和服务器,其中: 客户端,用于在崩溃时根据异常码和堆栈第一结构信息生成基本标志;根据异常 码和堆栈第二结构信息生成附加标志,其中所述第二结构信息包含堆栈第一结构信息以及 对应于所述堆栈第一结构信息的函数地址信息;并向服务器发送所述基本标志和附加标 志; 服务器,用于接收所述基本标志和附加标志。 从上述技术方案可以看出,在本专利技术实施方式中,根据崩溃时的异常码和堆栈第 一结构信息生成基本标志;根据所述异常码和该崩溃时的堆栈第二结构信息生成附加标 志,其中所述第二结构信息包含堆栈第一结构信息以及对应于所述堆栈第一结构信息的函 数地址信息;发送所述基本标志和附加标志。由此可见,在本专利技术实施方式中,基于多标志 机制实现了错误报告处理。多个标志能够暴露现有技术中一个标志可能对应多个漏洞的情 形,可以提高对崩溃的准确标识率,并增加修复问题的数量。 而且,还可以将本专利技术实施方式应用到各种终端中,并且可以跨平台跨终端使用, 适用范围非常广泛。 【附图说明】 图1为标志与错误报告的对比示意图; 图2为根据本专利技术实施方式标识崩溃的方法流程图; 图3为根据本专利技术实施方式崩溃时的堆栈结构示意图; 图4为根据本专利技术实施方式标识崩溃的装置结构图; 图5为根据本专利技术实施方式的标识崩溃的系统结构图。 【具体实施方式】 为使本专利技术的目的、技术方案和优点更加清楚,下面结合附图对本专利技术作进一步 的详细描述。 在本专利技术实施方式中,基于多标志(Signature)机制实现错误报告处理。在应用 程序崩溃(Crash)的时候,生成多个标志和一些基本信息以形成错误报告。多个标志能够 暴露现有技术中一个标志可能对应多个漏洞的情形,可以提高对崩溃的准确标识率,并增 加修复问题的数量。 图1为标志与错误报告的对比示意图。 由图1可见,按照标志的统计次数排序发现,标志的数量和错误报告的总数遵循 20/80原则,即一少部分标志(大约20%)占据极大部分比例。剩余(大约80%)则是很多长 尾数据。 如果可以解决排序前几位的标志所对应的漏洞问题,将可以解决程序的极大部分 崩溃。高占比的标志对应的问题应该是最优先需要解决的问题。通常按照标志的统计次数 进行排序后按照从高到低的顺序进行解决问题。 实际上,影响标志生成的因子主要包括两种类型:扩展式因子和凝结式因子。 扩展式因子的目的是增加标志的数量以尽可能使没有两个漏洞问题被赋予了同 样的标志;凝结式因子的目的是降低标志的数量以尽可能使没有两个标志代表的是同样的 漏洞问题。扩展式因子不应该为同样的漏洞问题引入新的标志,凝结式因子不应该把两个 漏洞问题生成同样的标志。这二者并不冲突,通过合理地使用这些因子,才能最终导向一个 目的:一个漏洞问题对应于一个标志。 示范性地,比较常用的标志算法生成因子如下表:本文档来自技高网...

【技术保护点】
一种标识崩溃的方法,其特征在于,该方法包括:根据崩溃时的异常码和堆栈第一结构信息生成基本标志;根据所述异常码和该崩溃时的堆栈第二结构信息生成附加标志,其中所述第二结构信息包含堆栈第一结构信息以及对应于所述堆栈第一结构信息的函数地址信息;发送所述基本标志和附加标志。

【技术特征摘要】
1. 一种标识崩溃的方法,其特征在于,该方法包括: 根据崩溃时的异常码和堆栈第一结构信息生成基本标志; 根据所述异常码和该崩溃时的堆栈第二结构信息生成附加标志,其中所述第二结构信 息包含堆栈第一结构信息以及对应于所述堆栈第一结构信息的函数地址信息; 发送所述基本标志和附加标志。2. 根据权利要求1所述的标识崩溃的方法,其特征在于,所述根据崩溃时的异常码和 堆栈第一结构信息生成基本标志包括: 根据崩溃时的异常码生成第一字符串; 根据崩溃时的堆栈第一结构信息生成第二字符串; 将所述第一字符串和第二字符串连接,并针对连接结果进行MD5加密; 对所述MD5加密后的字符串进行哈希运算,以生成基本标志。3. 根据权利要求1所述的标识崩溃的方法,其特征在于,所述根据异常码和该崩溃时 的堆栈第二结构信息生成附加标志包括: 根据所述崩溃时的异常码生成第三字符串; 根据所述崩溃时的堆栈第一结构信息以及对应于所述堆栈第一结构信息的函数地址 信息生成第四字符串; 将所述第三字符串和第四字符串连接,并针对连接结果进行MD5加密; 对所述MD5加密后的字符串进行哈希运算,以生成附加标志。4. 根据权利要求1-3中任一项所述的标识崩溃的方法,其特征在于,所述堆栈第一结 构信息为堆栈的模块名;所述对应于所述堆栈第一结构信息的函数地址信息为对应于堆栈 模块名的函数地址。5. -种标识崩溃的装置,其特征在于,该装置包括基本标志生成单元、附加标志生成单 元和标志发送单元,其中: 基本标志生成单元,用于根据崩溃时的异常码和堆栈第一结构信息生成基本标志; 附加标志生成单元,用于根据所述异常码和该崩溃时的堆栈第二结构信息生成附加标 志,其中所述第二结构信息包含堆栈第一结构信息以及对应于所述堆栈第一结构信息的函 数地址信息; 标志发送单元,用于发送所述基本标志和附加标志。6. 根据权利要求5所述的标识崩溃的装置,其特征在于, 基本标志生成单元,用于根据异常码生成第一字符串;根据堆栈第一结构信息生成第 二字符串;将所述第一字符串和第二字符串连接,并针对连接结果进行MD5加密;对所述 MD5加密后...

【专利技术属性】
技术研发人员:朱文焕
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1