crash信息存储方法及系统与流程

文档序号:12747872阅读:328来源:国知局
crash信息存储方法及系统与流程

本发明涉及数据处理领域,尤其涉及crash信息存储方法及系统。



背景技术:

当手机等客户端装置中的应用程序异常导致崩溃时,会产生crash(崩溃)信息。将客户端的crash信息上传到后台服务器,可以对异常原因进行分析和修复。

目前一般采用的crash信息上传机制为:后台服务器仅接收并存储客户端上传的所有crash信息。这种现有的crash信息上传机制的缺陷在于:未对crash信息进行实时性处理,当某个crash基本是必现的情况下,并不能通过自动措施进行规避,导致用户体验感差。同时,由于无法调整客户端上传的crash信息,导致后台服务器存储了很多重复或无用的crash信息,也浪费了大量手机流量。



技术实现要素:

有鉴于此,本发明的目的在于提供一种crash信息存储方法及系统,以解决现有的crash信息上传机制未对crash信息进行实时性处理的问题。

为实现上述目的,本发明提供一种crash信息存储方法,该方法包括步骤:接收客户端上传的crash信息;分析服务器的存储单元中是否有与接收到的crash信息相同的crash信息;当有相同的crash信息时,删除多余的crash信息,仅存储一个所述crash信息;及当没有相同的crash信息时,将接收到的所述crash信息存储到所述存储单元。

优选地,该方法还包括步骤:通知所述客户端所述crash信息属于重复信息,已执行删除操作。

优选地,所述crash信息包括对应的页面标识和crash发生的时间点。

优选地,该方法还包括步骤:对所述存储单元中存储的crash信息进行解析,确定各个crash信息对应的页面和crash发生的时间点;分析是否有页面在预设时间段内产生的crash信息数量大于预设阈值;及当有页面在预设时间段内产生的crash信息数量大于预设阈值时,将所述页面屏蔽。

优选地,该方法还包括步骤:对所述存储单元中存储的crash信息进行解析,确定各个crash信息对应的页面;分析是否有页面已被删除;及当有页面被已被删除时,将所述页面对应的crash信息进行删除。

为实现上述目的,本发明还提出一种crash信息存储系统,该系统包括:接收模块,用于接收客户端上传的crash信息;分析模块,用于分析服务器的存储单元中是否有与接收到的crash信息相同的crash信息;处理模块,用于当有相同的crash信息时,删除多余的crash信息,仅存储一个所述crash信息;及当没有相同的crash信息时,将接收到的所述crash信息存储到所述存储单元。

优选地,该系统还包括:通知模块,用于通知所述客户端所述crash信息属于重复信息,已执行删除操作。

优选地,所述crash信息包括对应的页面标识和crash发生的时间点。

优选地,所述分析模块还用于对所述存储单元中存储的crash信息进行解析,确定各个crash信息对应的页面和crash发生的时间点,及分析是否有页面在预设时间段内产生的crash信息数量大于预设阈值;所述处理模块还用于当有页面在预设时间段内产生的crash信息数量大于预设阈值时,将所述页面屏蔽。

优选地,所述分析模块还用于对所述存储单元中存储的crash信息进行解析,确定各个crash信息对应的页面,及分析是否有页面已被删除;所述处理模块还用于当有页面被已被删除时,将所述页面对应的crash信息进行删除。

本发明提出的crash信息存储方法及系统,可以自动删除重复的crash信息,并对后台服务器中存储的crash信息进行分析,向客户端屏蔽crash次数过多的页面,以及清理已删除页面对应的crash信息,从而减少不必要的crash信息存储数量,节省后台服务器的存储空间和客户端流量,并根据crash信息调整页面显示,提升用户体验。

附图说明

图1为本发明第一实施例提出的一种crash信息存储方法的流程图;

图2为本发明第二实施例提出的一种crash信息存储系统的模块示意图;

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1所示,本发明第一实施例提出一种crash信息存储方法,应用于后台服务器中,可以对客户端上传的crash信息进行自动处理。该方法包括以下步骤:

S100,接收客户端上传的crash信息。

具体地,当客户端中的应用程序异常导致崩溃时,会产生crash信息,该客户端将所产生的crash信息上传到后台服务器。所述crash信息包括对应的页面标识和crash发生的时间点。

S102,分析存储单元中是否有与接收到的crash信息相同的crash信息。当有相同的crash信息时,执行步骤S106-S108。当没有相同的crash信息时,执行步骤S104。

具体地,后台服务器会将客户端之前上传的crash信息存储在相应的存储单元,例如存储器中。当接收到客户端新上传的crash信息后,查询该存储单元中已存储的crash信息,分析是否有与该新上传的crash信息相同的crash信息。在该存储单元中可能有一个或多个crash信息与该新上传的crash信息相同,属于重复信息,不需要多次存储。

S104,将接收到的该crash信息存储到该存储单元。

S106,删除多余的crash信息,仅存储一个该crash信息。

具体地,当新接收到的该crash信息与后台服务器的存储单元中已存储的一个或多个crash信息相同时,后台服务器仅保留一个该crash信息。并且,可以在该存储单元已存储的该crash信息中选择一个进行保留,删除新接收到的该crash信息,也可以删除该存储单元已存储的该crash信息,将新接收到的该crash信息存储到该存储单元。

S108,通知客户端该crash信息属于重复信息,已执行删除操作。

S110,对存储的crash信息进行解析,确定各个crash信息对应的页面和crash发生的时间点。

S112,分析是否有页面在预设时间段内产生的crash信息数量大于预设阈值。

具体地,可以实时或定时对该存储单元中存储的crash信息进行分析,针对各个crash信息对应的页面,根据crash发生的时间点判断是否有页面在预设时间段内产生的crash信息数量大于预设阈值。在本实施例中,所述预设时间段可以是5分钟内,所述预设阈值可以是20次。

S114,当有页面在预设时间段内产生的crash信息数量大于预设阈值时,将该页面屏蔽。

具体地,当有页面在预设时间段内产生的crash信息数量大于预设阈值时,表示该页面crash次数过多,严重影响该客户端的用户体验,可以由后台服务器对该客户端屏蔽该页面,或者通知该客户端屏蔽该页面。

S116,分析是否有页面已被删除。

具体地,可以实时或定时针对各个crash信息对应的页面进行分析,查看其中是否有页面已经被后台服务器因为某种原因而删除。

S118,当有页面被已被删除时,将该页面对应的crash信息进行删除。

例如,crash信息A和crash信息B均对应页面C,但页面C已经从后台服务器中删除,则该crash信息A和crash信息B没必要继续存储,后台服务器对该crash信息A和crash信息B也同样进行删除。

本实施例提出的crash信息存储方法,可以自动删除重复的crash信息,并对后台服务器中存储的crash信息进行分析,向客户端屏蔽crash次数过多的页面,以及清理已删除页面对应的crash信息,从而减少不必要的crash信息存储数量,节省后台服务器的存储空间和客户端流量,并根据crash信息调整页面显示,提升用户体验。

值得注意的是,在其他实施例中,可以仅执行上述方法流程中的一部分,来实现对客户端上传的crash信息的自动处理。例如,仅执行步骤S100-S108,对新接收到的crash信息进行处理,或者仅执行步骤S110-S118,对已存储的crash信息及对应页面进行处理。

如图2所示,本发明第二实施例提出一种crash信息存储系统200,应用于后台服务器中,可以对客户端上传的crash信息进行自动处理。

在本实施例中,crash信息存储系统200包括接收模块202、分析模块204、处理模块206及通知模块208。

所述接收模块202,用于接收客户端上传的crash信息。

具体地,当客户端中的应用程序异常导致崩溃时,会产生crash信息,该客户端将所产生的crash信息上传到后台服务器,接收模块202接收该crash信息。所述crash信息包括对应的页面标识和crash发生的时间点。

所述分析模块204,用于分析存储单元中是否有与接收到的crash信息相同的crash信息。

具体地,后台服务器会将客户端之前上传的crash信息存储在相应的存储单元,例如存储器中。当接收模块202接收到客户端新上传的crash信息后,分析模块204查询该存储单元中已存储的crash信息,分析是否有与该新上传的crash信息相同的crash信息。在该存储单元中可能有一个或多个crash信息与该新上传的crash信息相同,属于重复信息,不需要多次存储。

所述处理模块206,用于当没有相同的crash信息时,将接收到的该crash信息存储到该存储单元。

所述处理模块206,还用于当有相同的crash信息时,删除多余的crash信息,仅存储一个该crash信息。

具体地,当新接收到的该crash信息与后台服务器的存储单元中已存储的一个或多个crash信息相同时,处理模块206仅保留一个该crash信息。并且,处理模块206可以在该存储单元已存储的该crash信息中选择一个进行保留,删除新接收到的该crash信息,也可以删除该存储单元已存储的该crash信息,将新接收到的该crash信息存储到该存储单元。

所述通知模块208,用于通知客户端该crash信息属于重复信息,已执行删除操作。

所述分析模块204,还用于对存储的crash信息进行解析,确定各个crash信息对应的页面和crash发生的时间点。然后分析是否有页面在预设时间段内产生的crash信息数量大于预设阈值。

具体地,分析模块204可以实时或定时对该存储单元中存储的crash信息进行分析,针对各个crash信息对应的页面,根据crash发生的时间点判断是否有页面在预设时间段内产生的crash信息数量大于预设阈值。在本实施例中,所述预设时间段可以是5分钟内,所述预设阈值可以是20次。

所述处理模块206,还用于当有页面在预设时间段内产生的crash信息数量大于预设阈值时,将该页面屏蔽。

具体地,当有页面在预设时间段内产生的crash信息数量大于预设阈值时,表示该页面crash次数过多,严重影响该客户端的用户体验,可以由处理模块206对该客户端屏蔽该页面,或者由通知模块208通知该客户端屏蔽该页面。

所述分析模块204,还用于分析是否有页面已被删除。

具体地,分析模块204可以实时或定时针对各个crash信息对应的页面进行分析,查看其中是否有页面已经被后台服务器因为某种原因而删除。

所述处理模块206,还用于当有页面被已被删除时,将该页面对应的crash信息进行删除。

例如,crash信息A和crash信息B均对应页面C,但页面C已经从后台服务器中删除,则该crash信息A和crash信息B没必要继续存储,处理模块206对该crash信息A和crash信息B也同样进行删除。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上参照附图说明了本发明的优选实施例,并非因此局限本发明的权利范围。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。另外,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本领域技术人员不脱离本发明的范围和实质,可以有多种变型方案实现本发明,比如作为一个实施例的特征可用于另一实施例而得到又一实施例。凡在运用本发明的技术构思之内所作的任何修改、等同替换和改进,均应在本发明的权利范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1