错误信息处理方法、装置、存储介质以及终端与流程

文档序号:26004004发布日期:2021-07-23 21:21阅读:70来源:国知局
错误信息处理方法、装置、存储介质以及终端与流程

本申请涉及计算机技术领域,尤其涉及一种错误信息处理方法、装置、存储介质以及终端。



背景技术:

随着科学技术的发展,人们生活中使用到移动终端、计算机等电子设备的机会也越来越多,在各种电子设备中软件作为实现各种功能的基础,例如,用户可以通过应用程序实现娱乐、学习以及工作等,因此如何保证应用程序工作过程的稳定也成为本领域人员研究的重点之一。

web应用程序是一种可以通过web访问的应用程序,该程序的最大好处是用户很容易访问应用程序,用户只需要有浏览器即可,不需要再安装其他软件,但是在相关技术中,web应用程序存在错误信息存储时占用资源的问题。



技术实现要素:

本申请提供一种错误信息处理方法、装置、存储介质以及终端,可以解决相关技术中web应用程序存在错误信息存储时占用资源的技术问题。

第一方面,本申请实施例提供一种错误信息处理方法,该方法包括:

接收上报的错误堆栈,若所述错误堆栈满足存储条件时,则对所述错误堆栈进行格式以及结构处理;

生成所述错误堆栈的唯一身份标识;

基于所述唯一身份标识确定所述错误堆栈的目标存储方式,并按照所述目标存储方式存储所述错误堆栈。

可选地,所述接收上报的错误堆栈之前,还包括:每隔预设时间通过预设接口获取针对无效错误堆栈的业务配置。

可选地,所述若所述错误堆栈满足存储条件时,则对所述错误堆栈进行格式以及结构处理,包括:

基于所述业务配置判断所述错误堆栈是否为无效错误堆栈;若判断所述错误堆栈为无效错误堆栈,则确定所述错误堆栈不满足存储条件,将所述错误堆栈不做存储处理;若判断所述错误堆栈不为无效错误堆栈,则确定所述错误堆栈满足存储条件,将对所述错误堆栈进行格式以及结构处理。

可选地,所述对所述错误堆栈进行格式以及结构处理,包括:对所述错误堆栈按照预设格式进行变换,以及提取并合并所述错误堆栈中的重复特征。

可选地,所述生成所述错误堆栈的唯一身份标识,包括:获取所述错误堆栈对应的堆栈属性,根据所述堆栈属性以及预设算法确定所述错误堆栈的唯一身份标识;其中所述堆栈属性包括但不限于业务信息、错误信息以及堆栈信息。

可选地,所述基于所述唯一身份标识确定所述错误堆栈的目标存储方式,并按照所述目标存储方式存储所述错误堆栈,包括:判断身份标识数据库中是否存在所述唯一身份标识;若所述身份标识数据库中不存在所述唯一身份标识,则确定所述错误堆栈为首次上报,并确定所述错误堆栈的存储方式为第一目标存储方式;基于所述第一目标存储方式将所述唯一身份标识存储至身份标识数据库,并将所述错误堆栈存储至数据存储数据库。

可选地,所述基于所述唯一身份标识确定所述错误堆栈的目标存储方式,并按照所述目标存储方式存储所述错误堆栈,还包括:若所述身份标识数据库中存在所述唯一身份标识,则确定所述错误堆栈为非首次上报,并确定所述错误堆栈的存储方式为第二目标存储方式;基于所述第二目标存储方式对所述存储数据库中所述错误堆栈中的预设信息进行更新。

第二方面,本申请实施例提供一种错误信息处理装置,该装置包括:

预处理模块,用于接收上报的错误堆栈,若所述错误堆栈满足存储条件时,则对所述错误堆栈进行格式以及结构处理;

身份标识生成模块,用于生成所述错误堆栈的唯一身份标识;

堆栈存储模块,用于基于所述唯一身份标识确定所述错误堆栈的目标存储方式,并按照所述目标存储方式存储所述错误堆栈。

第三方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行实现上述的方法的步骤。

第四方面,本申请实施例提供一种设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的方法的步骤。

本申请一些实施例提供的技术方案带来的有益效果至少包括:

本申请提供一种错误信息处理方法,首先接收上报的错误堆栈,若错误堆栈满足存储条件时,则对错误堆栈进行格式以及结构处理;然后生成错误堆栈的唯一身份标识;最后基于唯一身份标识确定错误堆栈的目标存储方式,并按照目标存储方式存储错误堆栈。一方面,由于在错误堆栈满足存储条件时,才对错误堆栈进行格式以及结构处理,可以避免对无效错误堆栈进行存储,并减少因为错误堆栈的格式和结构带来的存储压力;另一方面,由于是基于错误堆栈的唯一身份标识确定错误堆栈的目标存储方式,因此可以避免所有的错误堆栈都按照相同的存储方式进行存储,大大减少错误堆栈的占用空间。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种错误信息处理方法的示例性系统架构图;

图2为本申请实施例提供的一种错误信息处理方法的系统交互图;

图3为本申请另一实施例提供的错误信息处理方法的流程示意图;

图4为本申请另一实施例提供的一种错误信息处理方法的流程示意图;

图5为本申请另一实施例提供的一种错误信息处理装置的结构示意图;

图6为本申请另一实施例提供的一种错误信息处理装置的结构示意图;

图7为本申请实施例提供了一种终端的结构示意图。

具体实施方式

为使得本申请的特征和优点能够更加的明显和易懂,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而非全部实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

图1为本申请实施例提供的一种错误信息处理方法的示例性系统架构图。

如图1所示,系统架构可以包括至少一个终端110、服务器120以及网络130,网络130用于在终端110和服务器120之间提供通信链路的介质。网络130可以包括各种类型的有线通信链路或无线通信链路,例如:有线通信链路包括光纤、双绞线或同轴电缆的,无线通信链路包括蓝牙通信链路、无线保真(wireless-fidelity,wi-fi)通信链路或微波通信链路等。

终端110可以是硬件,也可以是软件。当终端110为硬件时,可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携式计算机和台式计算机等。当终端110为软件时,可以是安装在上述所列举的电子设备中,其可以实现成多个软件或软件模块(例如:用来提供分布式服务),也可以实现成单个软件或软件模块,在此不作具体限定。

服务器120可以是提供各种服务的业务服务器。需要说明的是,服务器120可以是硬件,也可以是软件。当服务器120为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器120为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块,在此不做具体限定。

应理解,图1中的终端、网络和服务器的数目仅是示意性的。根据实现需要,可以是任意数量的终端、网络和服务器。请参阅图2,图2为本申请实施例提供的一种错误信息处理方法的系统交互图,下面将结合图1和图2介绍一种错误信息处理方法中系统交互过程。

s201、终端中的客户端监控到错误信息之后,基于错误信息生成错误堆栈以及将错误堆栈上报至服务器。

s202、服务器接收上报的错误堆栈,若错误堆栈满足存储条件时,则对错误堆栈进行格式以及结构处理。

可选地,接收上报的错误堆栈之前,还包括:每隔预设时间通过预设接口获取针对无效错误堆栈的业务配置。

可选地,若错误堆栈满足存储条件时,则对错误堆栈进行格式以及结构处理,包括:基于业务配置判断错误堆栈是否为无效错误堆栈;若判断错误堆栈为无效错误堆栈,则确定错误堆栈不满足存储条件,将错误堆栈不做存储处理;若判断错误堆栈不为无效错误堆栈,则确定错误堆栈满足存储条件,将对错误堆栈进行格式以及结构处理。

进一步地,对错误堆栈进行格式以及结构处理,包括:对错误堆栈按照预设格式进行变换,以及提取并合并错误堆栈中的重复特征。

s203、服务器生成错误堆栈的唯一身份标识。

可选地,生成错误堆栈的唯一身份标识,包括:获取错误堆栈对应的堆栈属性,根据堆栈属性以及预设算法确定错误堆栈的唯一身份标识;其中堆栈属性包括但不限于业务信息、错误信息以及堆栈信息。

s204、服务器基于唯一身份标识确定错误堆栈的目标存储方式,并按照目标存储方式存储错误堆栈。

可选地,基于唯一身份标识确定错误堆栈的目标存储方式,并按照目标存储方式存储错误堆栈,包括:判断身份标识数据库中是否存在唯一身份标识;若身份标识数据库中不存在唯一身份标识,则确定错误堆栈为首次上报,并确定错误堆栈的存储方式为第一目标存储方式;基于第一目标存储方式将唯一身份标识存储至身份标识数据库,并将错误堆栈存储至数据存储数据库。

可选地,基于唯一身份标识确定错误堆栈的目标存储方式,并按照目标存储方式存储错误堆栈,还包括:若身份标识数据库中存在唯一身份标识,则确定错误堆栈为非首次上报,并确定错误堆栈的存储方式为第二目标存储方式;基于第二目标存储方式对存储数据库中错误堆栈中的预设信息进行更新。

在本申请实施例中,首先接收上报的错误堆栈,若错误堆栈满足存储条件时,则对错误堆栈进行格式以及结构处理;然后生成错误堆栈的唯一身份标识;最后基于唯一身份标识确定错误堆栈的目标存储方式,并按照目标存储方式存储错误堆栈。一方面,由于在错误堆栈满足存储条件时,才对错误堆栈进行格式以及结构处理,可以避免对无效错误堆栈进行存储,并减少因为错误堆栈的格式和结构带来的存储压力;另一方面,由于是基于错误堆栈的唯一身份标识确定错误堆栈的目标存储方式,因此可以避免所有的错误堆栈都按照相同的存储方式进行存储,大大减少错误堆栈的占用空间。

请参阅图3,图3为本申请另一实施例提供的错误信息处理方法的流程示意图。

如图3所示,该方法包括:

s301、接收上报的错误堆栈,若错误堆栈满足存储条件时,则对错误堆栈进行格式以及结构处理。

可以理解的,本申请实施例提供的错误信息处理方法可以应用于各种应用程序、脚本或者执行命令中,为了方便描述,下面以应用于web应用程序中为例,介绍错误信息处理方法的具体实施过程。

web应用程序是一种利用网络浏览器和网络技术在互联网上执行任务的计算机程序。web应用程序通常用浏览器支持的语言(例如javascript和html)编写,因为这些语言依赖浏览器来呈现程序可执行文件。web应用程序需要一个web服务器来管理来自客户端的请求,一个应用服务器来执行所请求的任务,有时还需要一个数据库来存储信息。

以下是一个典型的web应用程序流程:1、用户通过网络浏览器或应用程序的用户界面,通过互联网触发对网络服务器的请求;2、web服务器将此请求转发到适当的web服务器;3、web服务器执行请求的任务(例如查询数据库或处理数据),然后生成请求数据的结果;4、web服务器将处理后的数据或请求的信息或已处理数据的结果一起发送到web服务器;5、web服务器用所请求的信息响应客户端,该信息随后出现在用户的显示屏上。

由上述web应用程序流程来看,web应用程序至少包括客户端以及服务器,下面以客户端设置于终端为例,介绍终端与服务器之间的交互。终端中客户端可以设置有前端监控系统,前端监控系统是一站式体系化的针对各大web站点错误监控的行业解决方案,业务只需要在web前端脚本上简单配置,即可实现脚本错误上报,可以自定义设置告警阈值进行监控,同时包含了可视化查询系统,通过简单查询可以快速定位错误信息。web应用程序脚本数量庞大,开发人员在如此之多的脚本中定位某个问题变得困难,前端监控系统能够通过各种查询条件,快速找到详细错误日志,为开发人员提供javascript、ajax请求错误诊断和页面加载深度分析帮助开发人员深入定位每一个问题细节,帮助定位错误脚本代码。一般而言,一个前端监控系统大致包含四个步骤:日志采集、日志存储、统计分析、监控和告警。本申请主要聚焦在日志存储阶段,对前端javascript语言运行时的异常错误堆栈进行优化处理,以减少错误堆栈存储时占用资源的问题。

由于终端中客户端可以设置有前端监控系统,前端监控系统对web应用程序运行过程的各种错误信息进行监控,并根据该错误信息生成错误堆栈,并将错误堆栈通过http请求等方式发送至服务器,因此服务器可以首先接收上报的错误堆栈。

在相关技术中,服务器会直接进行错误异常数据存储到数据库,再进行平均值、错误总数、最大(小)值、个数等计算在存储到数据库中,但是存储的大部分错误堆栈都是scripterror或者是容器脚本注入,终端制造商脚本注入等,与web应用程序中的实际业务无关,那么需要提供一种高效的过滤机制,过滤无效错误堆栈。

在本申请实施例中,在接收上报的错误堆栈之后,可以判断错误堆栈满足存储条件,其中存储条件可以根据web应用程序中的实际业务进行设置,以过滤出与web应用程序中的实际业务无关的错误堆栈,当若错误堆栈满足存储条件时,代表该错误堆栈与web应用程序中的实际业务相关,则可以进行其他相关操作。若错误堆栈不满足存储条件时,代表该错误堆栈与web应用程序中的实际业务无关,那么可以忽略该错误堆栈,也即不对该错误堆栈进行存储处理,这样可以避免服务器存储一些与web应用程序中的实际业务无关的错误堆栈,减少服务器存储压力。

在相关技术中,不同浏览器的错误堆栈格式是不一样的,且错误堆栈中存在各种重复的字节、域名或者参数,如果直接将这些错误堆栈进行存储,那么也会导致服务器存在较高的存储压力。因此在本申请实施例中,可以在错误堆栈满足存储条件之后,可以对错误堆栈进行格式以及结构处理,以使得各错误堆栈的格式保持统一,去除一些不必要的格式,并且去除各错误堆栈中的重复的字节、域名或者参数,以减少服务器的存储压力。

s302、生成错误堆栈的唯一身份标识。

在相关技术中,相同错误在全网发生的重复性会比较高,如果没有判断是否同一个错误,将客户端的异常数据直接都存储在服务器后台,会特别浪费服务器后台的数据库存储资源。

在本申请实施例中,由于在上述步骤中对错误堆栈进行了格式处理,因此可以很容易根据统一的格式生成错误堆栈的唯一身份标识,便于后续根据错误堆栈的唯一身份标识判需要对错误堆栈进行何种形式的存储。

s303、基于唯一身份标识确定错误堆栈的目标存储方式,并按照目标存储方式存储错误堆栈。

在获取到错误堆栈的唯一身份标识之后,可以根据该唯一身份标识确定是否该错误堆栈是否在之前上报过,如果该错误堆栈在之前没有上报过,那么可以将该错误堆栈的完整的信息以及数据进行存储;如果该错误堆栈在之前上报过,那么服务器会存储关于该错误堆栈的完整的信息以及数据,那么只需要对该错误堆栈的相关属性信息进行存储,而不需要重复对错误堆栈的完整的信息以及数据进行存储,可以理解的,错误堆栈的相关属性信息的占用空间,是远小于错误堆栈的完整的信息以及数据的占用空间的,因此可以大大减少服务器后台的数据库存储资源浪费。

在本申请实施例中,首先接收上报的错误堆栈,若错误堆栈满足存储条件时,则对错误堆栈进行格式以及结构处理;然后生成错误堆栈的唯一身份标识;最后基于唯一身份标识确定错误堆栈的目标存储方式,并按照目标存储方式存储错误堆栈。一方面,由于在错误堆栈满足存储条件时,才对错误堆栈进行格式以及结构处理,可以避免对无效错误堆栈进行存储,并减少因为错误堆栈的格式和结构带来的存储压力;另一方面,由于是基于错误堆栈的唯一身份标识确定错误堆栈的目标存储方式,因此可以避免所有的错误堆栈都按照相同的存储方式进行存储,大大减少错误堆栈的占用空间。

请参阅图4,图4为本申请另一实施例提供的一种错误信息处理方法的流程示意图。

如图4所示,该方法包括:

s401、每隔预设时间通过预设接口获取针对无效错误堆栈的业务配置。

在本申请实施例中,为了便于后续可以准确、快速判断错误堆栈是否满足存储条件,可以预先设置针对无效错误堆栈的业务配置,该业务配置可以是在第三方系统或者类似于云存储的系统上配置,那么服务器可以每隔预设时间通过预设接口获取针对无效错误堆栈的业务配置,例如,服务器可以定时(例如每10分钟)通过http接口去配置系统拉取业务配置。

s402、接收上报的错误堆栈,基于业务配置判断错误堆栈是否为无效错误堆栈。

由于上述步骤中的无效错误堆栈可以认为是与web应用程序中的实际业务无关的错误堆栈,且无效错误堆栈可以根据web应用程序中实际业务进行设定,那么业务配置中可以保存有实际业务对应的特征,因此在接收上报的错误堆栈之后,可以根据该特征判断错误堆栈是否满足存储条件,也即基于业务配置判断错误堆栈是否为无效错误堆栈。

s403、若判断错误堆栈为无效错误堆栈,则确定错误堆栈不满足存储条件,将错误堆栈不做存储处理。

若判断错误堆栈为无效错误堆栈时,确定错误堆栈不满足存储条件,代表该错误堆栈与web应用程序中的实际业务无关,那么可以忽略该错误堆栈,也即不对该错误堆栈进行存储处理,这样可以避免服务器存储一些与web应用程序中的实际业务无关的错误堆栈,减少服务器存储压力。

s404、若判断错误堆栈不为无效错误堆栈,则确定错误堆栈满足存储条件,将对错误堆栈进行格式以及结构处理。

若判断错误堆栈不为无效错误堆栈时,确定错误堆栈满足存储条件,代表该错误堆栈与web应用程序中的实际业务有关,那么可以对对错误堆栈进行格式以及结构处理,以减少服务器存储压力。

具体的,在对错误堆栈进行格式处理时,可以具体对错误堆栈按照预设格式进行变换,可以去除一些不必要的格式,以使得各错误堆栈经过格式变换之后为统一格式。例如,预设格式可以为:

通过以上错误堆栈的存储格式,可以抹平不同浏览器中的错误堆栈的格式差异,以减少服务器的存储压力。

进一步地,在对错误堆栈进行结构处理时,可以提取并合并错误堆栈中的重复特征,其中重复特征可以是重复的字节、域名或者参数,例如,重复特征可以是重复带有脚本的cdn域名,通过合并错误堆栈中的重复特征,可以去除各错误堆栈中的重复的特征,以减少服务器的存储压力。

s405、获取错误堆栈对应的堆栈属性,根据堆栈属性以及预设算法确定错误堆栈的唯一身份标识。

在生成错误堆栈的唯一身份标识的过程中,可以先获取错误堆栈对应的堆栈属性,然后根据堆栈属性以及预设算法确定错误堆栈的唯一身份标识,其中堆栈属性包括但不限于业务信息、错误信息以及堆栈信息,预设算法可以是对称加密算法,例如des、3des、aes,可以是非对称算法,例如rsa、dsa,还可以是散列算法,例如sha-1、md5。

s406、判断身份标识数据库中是否存在唯一身份标识。

在获取到错误堆栈的唯一身份标识之后,可以根据该唯一身份标识确定是否该错误堆栈是否在之前上报过,一种可行的实施例方式是,判断身份标识数据库中是否存在唯一身份标识,其中身份标识数据库为保存上报错误堆栈对应的身份标识的数据库。

s407、若身份标识数据库中不存在唯一身份标识,则确定错误堆栈为首次上报,并确定错误堆栈的存储方式为第一目标存储方式。

由于身份标识数据库为保存上报错误堆栈对应的身份标识的数据库,因此若身份标识数据库中不存在唯一身份标识,则确定错误堆栈为首次上报,并确定错误堆栈的存储方式为第一目标存储方式,以便于后续根据第一目标存储方式对错误堆栈进行处理。

s408、基于第一目标存储方式将唯一身份标识存储至身份标识数据库,并将错误堆栈存储至数据存储数据库。

在确定错误堆栈的存储方式为第一目标存储方式之后,可以基于第一目标存储方式将唯一身份标识存储至身份标识数据库,便于后续判断上传的错误堆栈是否为首次上报,还可以并将错误堆栈存储至数据存储数据库,此时服务器可以将该错误堆栈的完整的信息以及数据进行存储。

其中,身份标识数据库可以是常驻内存的数据库,以保证服务器判断上传的错误堆栈是否为首次上报的速度,例如,身份标识数据库为redis数据库,还可以指定身份标识数据库各身份百世一定的过期时间(例如3个月),以保证各身份标识的时效性;数据存储数据库可以非常驻内存的数据库,以保证服务器存储错误堆栈的稳定性,例如,数据存储数据库可以是mongo数据库。

进一步地,上述生成的错误堆栈的唯一身份标识可以作为错误堆栈在数据存储数据库中的索引键值,以提高在数据存储数据库查询错误堆栈的速度。

s409、若身份标识数据库中存在唯一身份标识,则确定错误堆栈为非首次上报,并确定错误堆栈的存储方式为第二目标存储方式。

由于身份标识数据库为保存上报错误堆栈对应的身份标识的数据库,因此若身份标识数据库中存在唯一身份标识,则确定错误堆栈为非首次上报,并确定错误堆栈的存储方式为第二目标存储方式,以便于后续根据第二目标存储方式对错误堆栈进行处理。

s410、基于第二目标存储方式对存储数据库中错误堆栈中的预设信息进行更新。

在确定错误堆栈的存储方式为第二目标存储方式之后,由于该错误堆栈在之前上报过,那么服务器中的数据存储数据库中,会存储关于该错误堆栈的完整的信息以及数据,那么只需要对该错误堆栈的相关属性信息也即预设信息进行存储,而不需要重复对错误堆栈的完整的信息以及数据进行存储,例如,预设信息可以是错误堆栈发生的数量、用户的地域、发生时间、发生错误的业务前端版本号等。

可以理解的,错误堆栈的预设信息的占用空间,是远小于错误堆栈的完整的信息以及数据的占用空间的,因此可以大大减少服务器后台的数据库存储资源浪费。

在本申请实施例中,首先接收上报的错误堆栈,若错误堆栈满足存储条件时,则对错误堆栈进行格式以及结构处理;然后生成错误堆栈的唯一身份标识;最后基于唯一身份标识确定错误堆栈的目标存储方式,并按照目标存储方式存储错误堆栈。一方面,由于在错误堆栈满足存储条件时,才对错误堆栈进行格式以及结构处理,可以避免对无效错误堆栈进行存储,并减少因为错误堆栈的格式和结构带来的存储压力;另一方面,由于是基于错误堆栈的唯一身份标识确定错误堆栈的目标存储方式,因此可以避免所有的错误堆栈都按照相同的存储方式进行存储,大大减少错误堆栈的占用空间。

请参阅图5,图5为本申请另一实施例提供的一种错误信息处理装置的结构示意图。

如图5所示,错误信息处理装置500包括:

预处理模块510,用于接收上报的错误堆栈,若错误堆栈满足存储条件时,则对错误堆栈进行格式以及结构处理。

身份标识生成模块520,用于生成错误堆栈的唯一身份标识。

堆栈存储模块530,用于基于唯一身份标识确定错误堆栈的目标存储方式,并按照目标存储方式存储错误堆栈。

请参阅图6,图6为本申请另一实施例提供的一种错误信息处理装置的结构示意图。

如图6所示,错误信息处理装置600包括:

业务配置获取模块610,用于每隔预设时间通过预设接口获取针对无效错误堆栈的业务配置。

无效堆栈判断模块620,用于接收上报的错误堆栈,基于业务配置判断错误堆栈是否为无效错误堆栈。

第一预处理模块630,用于若判断错误堆栈为无效错误堆栈,则确定错误堆栈不满足存储条件,将错误堆栈不做存储处理。

第二预处理模块640,用于若判断错误堆栈不为无效错误堆栈,则确定错误堆栈满足存储条件,将对错误堆栈进行格式以及结构处理。

其中对错误堆栈进行格式以及结构处理,包括:对错误堆栈按照预设格式进行变换,以及提取并合并错误堆栈中的重复特征。

身份标识生成模块650,用于获取错误堆栈对应的堆栈属性,根据堆栈属性以及预设算法确定错误堆栈的唯一身份标识。

其中堆栈属性包括但不限于业务信息、错误信息以及堆栈信息。

身份标识判断模块660,用于判断身份标识数据库中是否存在唯一身份标识。

第一存储确定模块670,用于若身份标识数据库中不存在唯一身份标识,则确定错误堆栈为首次上报,并确定错误堆栈的存储方式为第一目标存储方式。

第一存储执行模块680,用于基于第一目标存储方式将唯一身份标识存储至身份标识数据库,并将错误堆栈存储至数据存储数据库。

第二存储确定模块690,用于若身份标识数据库中存在唯一身份标识,则确定错误堆栈为非首次上报,并确定错误堆栈的存储方式为第二目标存储方式。

第二存储执行模块6100,用于基于第二目标存储方式对存储数据库中错误堆栈中的预设信息进行更新。

在本申请实施例中,一种错误信息处理装置包括:预处理模块,用于接收上报的错误堆栈,若错误堆栈满足存储条件时,则对错误堆栈进行格式以及结构处理;身份标识生成模块,用于生成错误堆栈的唯一身份标识;堆栈存储模块,用于基于唯一身份标识确定错误堆栈的目标存储方式,并按照目标存储方式存储错误堆栈。一方面,由于在错误堆栈满足存储条件时,才对错误堆栈进行格式以及结构处理,可以避免对无效错误堆栈进行存储,并减少因为错误堆栈的格式和结构带来的存储压力;另一方面,由于是基于错误堆栈的唯一身份标识确定错误堆栈的目标存储方式,因此可以避免所有的错误堆栈都按照相同的存储方式进行存储,大大减少错误堆栈的占用空间。

本申请实施例还提供了一种计算机存储介质,计算机存储介质存储有多条指令,指令适于由处理器加载并执行如上述实施例中的任一项的方法的步骤。

进一步地,请参见图7,图7为本申请实施例提供了一种终端的结构示意图。如图7所示,终端700可以包括:至少一个中央处理器701,至少一个网络接口704,用户接口703,存储器705,至少一个通信总线702。

其中,通信总线702用于实现这些组件之间的连接通信。

其中,用户接口703可以包括显示屏(display)、摄像头(camera),可选用户接口703还可以包括标准的有线接口、无线接口。

其中,网络接口704可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。

其中,中央处理器701可以包括一个或者多个处理核心。中央处理器701利用各种接口和线路连接整个终端700内的各个部分,通过运行或执行存储在存储器705内的指令、程序、代码集或指令集,以及调用存储在存储器705内的数据,执行终端700的各种功能和处理数据。可选的,中央处理器701可以采用数字信号处理(digitalsignalprocessing,dsp)、现场可编程门阵列(field-programmablegatearray,fpga)、可编程逻辑阵列(programmablelogicarray,pla)中的至少一种硬件形式来实现。中央处理器701可集成中央中央处理器(centralprocessingunit,cpu)、图像中央处理器(graphicsprocessingunit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到中央处理器701中,单独通过一块芯片进行实现。

其中,存储器705可以包括随机存储器(randomaccessmemory,ram),也可以包括只读存储器(read-onlymemory)。可选的,该存储器705包括非瞬时性计算机可读介质(non-transitorycomputer-readablestoragemedium)。存储器705可用于存储指令、程序、代码、代码集或指令集。存储器705可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器705可选的还可以是至少一个位于远离前述中央处理器701的存储装置。如图7所示,作为一种计算机存储介质的存储器705中可以包括操作系统、网络通信模块、用户接口模块以及错误信息处理程序。

在图7所示的终端700中,用户接口703主要用于为用户提供输入的接口,获取用户输入的数据;而中央处理器701可以用于调用存储器705中存储的错误信息处理程序,并具体执行以下操作:

接收上报的错误堆栈,若错误堆栈满足存储条件时,则对错误堆栈进行格式以及结构处理;

生成错误堆栈的唯一身份标识;

基于唯一身份标识确定错误堆栈的目标存储方式,并按照目标存储方式存储错误堆栈。

在一个实施例中,中央处理器701在执行接收上报的错误堆栈之前,还具体执行以下步骤:每隔预设时间通过预设接口获取针对无效错误堆栈的业务配置。

在一个实施例中,中央处理器701在执行若错误堆栈满足存储条件时,则对错误堆栈进行格式以及结构处理时,具体执行以下步骤:

基于业务配置判断错误堆栈是否为无效错误堆栈;若判断错误堆栈为无效错误堆栈,则确定错误堆栈不满足存储条件,将错误堆栈不做存储处理;若判断错误堆栈不为无效错误堆栈,则确定错误堆栈满足存储条件,将对错误堆栈进行格式以及结构处理。

在一个实施例中,中央处理器701在执行对错误堆栈进行格式以及结构处理时,具体执行以下步骤:

对错误堆栈按照预设格式进行变换,以及提取并合并错误堆栈中的重复特征。

在一个实施例中,中央处理器701在执行生成错误堆栈的唯一身份标识时,具体执行以下步骤:

获取错误堆栈对应的堆栈属性,根据堆栈属性以及预设算法确定错误堆栈的唯一身份标识;其中堆栈属性包括但不限于业务信息、错误信息以及堆栈信息。

在一个实施例中,中央处理器701在执行基于唯一身份标识确定错误堆栈的目标存储方式,并按照目标存储方式存储错误堆栈时,具体执行以下步骤:

判断身份标识数据库中是否存在唯一身份标识;若身份标识数据库中不存在唯一身份标识,则确定错误堆栈为首次上报,并确定错误堆栈的存储方式为第一目标存储方式;基于第一目标存储方式将唯一身份标识存储至身份标识数据库,并将错误堆栈存储至数据存储数据库。

在一个实施例中,中央处理器701在执行基于唯一身份标识确定错误堆栈的目标存储方式,并按照目标存储方式存储错误堆栈时,还具体执行以下步骤:

若身份标识数据库中存在唯一身份标识,则确定错误堆栈为非首次上报,并确定错误堆栈的存储方式为第二目标存储方式;基于第二目标存储方式对存储数据库中错误堆栈中的预设信息进行更新。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。

作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。

以上为对本申请所提供的一种错误信息处理方法、装置、存储介质以及终端的描述,对于本领域的技术人员,依据本申请实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。

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