一种信息处理方法及装置的制造方法

文档序号:10686932阅读:296来源:国知局
一种信息处理方法及装置的制造方法
【专利摘要】本发明公开了一种信息处理装置,所述装置包括:检测单元,用于检测在遍历处理流程中的每一个单位处理过程中是否产生异常;处理单元,用于如果产生异常,过滤掉在每一个单位处理过程产生的异常,并获取与所述异常相关的信息;响应单元,用于待遍历处理流程结束后,向客户端返回过滤掉所述异常的结果。本发明还同时公开了一种信息处理方法。采用本发明的技术方案,能提高服务器接口容错性及错误解决效率。
【专利说明】
_种信息处理方法及装置
技术领域
[0001]本发明涉及信息处理技术,尤其涉及一种信息处理方法及装置。
【背景技术】
[0002]目前,在服务器的接口处理中,所捕获的异常一般是向外抛出,即最后异常码会返回到客户端那里。异常是一个事件,它出现在程序执行过程当中,会影响程序指令的正常流程。采用向外抛出异常的处理方式,所带来的问题是,如果接口是涉及到遍历处理的时候,当其中一次的处理出现异常,就会导致整个接口返回异常。也就是说,假设客户端需要向服务器获取10条数据,这10条数据中9条是正确的可以正常显示的,但是因为I条数据有问题,就导致所有数据在客户端都无法显示出来。

【发明内容】

[0003]有鉴于此,本发明的主要目的在于提供一种信息处理方法及装置,应用于服务器端,能提高服务器接口容错性及错误解决效率。
[0004]为达到上述目的,本发明的技术方案是这样实现的:
[0005]本发明提供了一种信息处理装置,所述装置包括:
[0006]检测单元,用于检测在遍历处理流程中的每一个单位处理过程中是否产生异常;
[0007]处理单元,用于如果产生异常,过滤掉在每一个单位处理过程产生的异常,并获取与所述异常相关的信息;
[0008]响应单元,用于待遍历处理流程结束后,向客户端返回过滤掉所述异常的结果。
[0009]上述方案中,可选地,所述处理单元,还用于:
[0010]判断所述异常的类型;
[0011]查询所述异常对应的代码,确定所述代码所属的包名、代码的具体位置、代码的调用顺序;
[0012]获取所述代码对应的负责人员的联系方式。
[0013]上述方案中,可选地,所述装置还包括:
[0014]存储单元,用于存储与所述异常相关的信息;
[0015]发送单元,用于在满足触发条件时,读取与所述异常相关的信息,并将所述异常的异常信息通知所述异常对应的负责人员。
[0016]上述方案中,可选地,所述发送单元,还用于:在将所述异常的异常信息通知所述异常对应的负责人员之前,
[0017]根据异常类型、异常的具体位置、异常的调用顺序对各个异常进行分组。
[0018]上述方案中,可选地,所述发送单元,还用于:
[0019]统计每一组中相同类型的异常发生的次数,并将重复的异常进行合并;
[0020]提取异常发生的时间;
[0021]读取所述异常对应的代码所对应的负责人员的联系方式;
[0022]将所述异常的异常信息通过所述联系方式发送给所述负责人员所持设备;
[0023]其中,所述异常信息包括:
[0024]异常发生的次数、异常发生的时间、异常对应的代码,以及所述代码所属的包名、代码的具体位置、代码的调用顺序。
[0025]本发明还提供了一种信息处理方法,所述方法包括:
[0026]检测在遍历处理流程中的每一个单位处理过程中是否产生异常;
[0027]如果是,过滤掉在每一个单位处理过程产生的异常,并获取与所述异常相关的信息;
[0028]待遍历处理流程结束后,向客户端返回过滤掉所述异常的结果。
[0029]上述方案中,可选地,所述获取与所述异常相关的信息,包括:
[0030]判断所述异常的类型;
[0031]查询所述异常对应的代码,确定所述代码所属的包名、代码的具体位置、代码的调用顺序;
[0032]获取所述代码对应的负责人员的联系方式。
[0033]上述方案中,可选地,所述获取与所述异常相关的信息之后,还包括:
[0034]存储与所述异常相关的信息;
[0035]在满足触发条件时,读取与所述异常相关的信息,并将所述异常的异常信息通知所述异常对应的负责人员。
[0036]上述方案中,可选地,所述将所述异常的异常信息通知所述异常对应的负责人员之前,还包括:
[0037]根据异常类型、异常的具体位置、异常的调用顺序对各个异常进行分组。
[0038]上述方案中,可选地,所述将所述异常的异常信息通知所述异常对应的负责人员,包括:
[0039]统计每一组中相同类型的异常发生的次数,并将重复的异常进行合并;
[0040]提取异常发生的时间;
[0041]读取所述异常对应的代码所对应的负责人员的联系方式;
[0042]将所述异常的异常信息通过所述联系方式发送给所述负责人员所持设备;
[0043]其中,所述异常信息包括:
[0044]异常发生的次数、异常发生的时间、异常对应的代码,以及所述代码所属的包名、代码的具体位置、代码的调用顺序。
[0045]本发明所提供的实施例的技术方案中,检测在遍历处理流程中的每一个单位处理过程中是否产生异常;如果是,过滤掉在每一个单位处理过程产生的异常,并获取与所述异常相关的信息;待遍历处理流程结束后,向客户端返回过滤掉所述异常的结果。通过对本发明实施例技术方案的实施,能提高服务器接口容错性及错误解决效率。
【附图说明】
[0046]图1为本发明实施例提供的信息处理方法的流程示意图;
[0047]图2为本发明实施例提供的捕获及存储异常的实现流程示意图;
[0048]图3为本发明实施例提供的向负责人员发送异常信息的实现流程示意图;
[0049]图4为本发明实施例提供的信息处理装置的组成结构示意图。
【具体实施方式】
[0050]为了能够更加详尽地了解本发明的特点与技术内容,下面结合附图对本发明的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本发明。
[0051]图1为本发明实施例提供的信息处理方法的实现流程示意图,本实施例中的信息处理方法可应用于服务器侧,如图1所示,该方法主要包括以下步骤:
[0052]步骤101:检测在遍历处理流程中的每一个单位处理过程中是否产生异常。
[0053]其中,所述遍历处理流程至少包括一个单位处理流程。
[0054]这里,所述异常是指一个事件,它出现在程序执行过程当中,会影响程序指令的正常流程。
[0055]步骤102:如果是,过滤掉在每一个单位处理过程产生的异常,并获取与所述异常相关的信息。
[0056]例如,所捕获的异常可能是程序缺陷或者缺少系统资源。
[0057]若服务器采用向外抛出异常的处理方式,所带来的问题是,如果接口是涉及到遍历处理的时候,当其中一次的处理出现异常,就会导致整个接口返回异常;例如,假设客户端需要获取10条数据,这10条数据中9条是正确的可以正常显示的,但是因为I条数据有问题,就导致所有数据在客户端都无法显示出来。而采用本实施例所述技术方案,由于将有异常的那条数据过滤掉,在终端客户端能够显示9条正确的数据。
[0058]在一实施方式中,所述获取与所述异常相关的信息,可以包括:
[0059]判断所述异常的类型;
[0060]查询所述异常对应的代码,确定所述代码所属的包名、代码的具体位置、代码的调用顺序;
[0061]获取所述代码对应的负责人员的联系方式。
[0062]可选地,从代码注释中获取所述代码对应的负责人员的联系方式。
[0063]这里,所述联系方式可以是指邮箱地址、联系电话号码、即时通讯账码,等。
[0064]步骤103:待遍历处理流程结束后,向客户端返回过滤掉所述异常的结果。
[0065]如此,在服务器进行遍历处理过程中产生异常时,尽可能地减小异常对整个遍历处理流程的影响,以保证不影响用户正常的使用。
[0066]上述方案中,所述获取与所述异常相关的信息之后,还可以包括:
[0067]存储与所述异常相关的信息;
[0068]在满足触发条件时,读取与所述异常相关的信息,并将所述异常的异常信息通知所述异常对应的负责人员。
[0069]可选地,将与所述异常相关的信息存储到预设数据库中,或者,将与所述异常相关的信息存储到异常信息列表中。
[0070]在一实施方式中,所述触发条件为:按照设置的时间间隔定期向负责人员反馈其所负责的异常信息。或者,当异常的个数达到预设阈值时,将所述异常的异常信息通知所述异常对应的负责人员。这里,所述时间的长度、预设阈值均可以根据实际情况进行设定。
[0071]在另一实施方式中,所述触发条件为:接收到第一设备发送的查询消息时,将所述异常的异常信息通知所述异常对应的负责人员。这里,可选地,所述第一设备为负责人员所持设备。
[0072]上述方案中,所述负责人员至少包括下述中的一种或几种:项目负责人、开发人员。
[0073]通常来讲,所述负责人员是指接收到异常信息时,能够在一定时间范围内针对所述异常做出处理的人。
[0074]在一实施方式中,所述将所述异常的异常信息通知所述异常对应的负责人员,可以包括:
[0075]统计每一组中相同类型的异常发生的次数,并将重复的异常进行合并;
[0076]提取异常发生的时间;
[0077]读取所述异常对应的代码所对应的负责人员的联系方式;
[0078]将所述异常的异常信息通过所述联系方式发送给所述负责人员所持设备;
[0079]其中,所述异常信息包括:
[0080]异常发生的次数、异常发生的时间、异常对应的代码,以及所述代码所属的包名、代码的具体位置、代码的调用顺序。
[0081 ]在本发明实施例中,检测在遍历处理流程中的每一个单位处理过程中是否产生异常;如果是,过滤掉在每一个单位处理过程产生的异常,并获取与所述异常相关的信息;待遍历处理流程结束后,向客户端返回过滤掉所述异常的结果。通过对本发明实施例技术方案的实施,在服务器进行遍历处理过程中产生异常时,尽可能地减小异常对整个遍历处理流程的影响,以保证不影响用户正常的使用,从而提高服务器接口容错性;由服务器侧确定异常发生在代码的哪一行、以及异常的具体类型等异常信息,节省了开发人员查询这些异常信息的时间,进而为开发人员赢取了更多的处理时间,提高了开发人员解决该问题时的效率。另外,将具体问题通知给具体开发人员,提高了问题指派的效率及错误解决效率。
[0082]实施例二
[0083]图2为本发明实施例提供的捕获及存储异常的实现流程示意图,如图2所示,该捕获及存储异常的流程主要包括以下步骤:
[0084]步骤201:调用服务器接口 ;
[0085]步骤202:遍历处理的循环体;
[0086]步骤203:判断循环是否完成,如果是,执行步骤210;否则,执行步骤204;
[0087]步骤204:执行循环中的下一个单次处理,然后执行步骤205;
[0088]步骤205:进行捕获异常处理,然后执行步骤206;
[0089]步骤206:判断在所述单次处理中是否出现异常,如果出现,执行步骤207;如果未出现,返回步骤202。
[0090]步骤207:记录异常发生的具体位置,然后执行步骤208;
[0091]步骤208:解析代码注释中具体开发人员的邮箱地址,然后执行步骤209;
[0092]步骤209:将与异常相关的信息记录到数据库中,然后返回步骤202;
[0093]步骤210:向客户端返回过滤掉异常数据的结果,然后进入步骤211;
[0094]步骤211:结束。
[0095]如此,有遍历处理的接口中,在单个处理中增加异常捕获,过滤单个的错误数据,以保证当只有少数数据出现异常时,也不影响用户正常的使用。并且,通过对异常信息的解析,来确定异常发生在代码的哪一行,以及异常的具体类型,以便于提高开发人员解决该问题时的效率。另外,解析代码注释中的开发人员邮箱地址,以便于实现具体问题通知给具体开发人员,以提高问题指派的效率。
[0096]实施例三
[0097]图3为本发明实施例提供的向负责人员发送异常信息的实现流程示意图,如图3所示,该流程主要包括以下步骤:
[0098]步骤301:定时任务启动;
[0099]这里,所述定时任务用于指示向负责人员发送异常信息。
[0100]步骤302:根据异常发生的具体位置、异常的类型及调用顺序对进行分组;
[0101 ] 步骤303:遍历处理。
[0102]这里,所述遍历处理可指依次处理每一分组中的异常。
[0103]步骤304:判断循环是否完成,如果是,执行步骤312;如果否,执行步骤305;
[0104]这里,若所述循环包含有多个分组,判断循环是否完成是指最后一个分组是否处理完毕。
[0105]步骤305:统计该类异常发生的次数,执行步骤306;
[0106]步骤306:提取异常发生的时间;然后进入步骤307;
[0107]步骤307:提取异常的具体信息;然后执行步骤308;
[0108]其中,所述异常的具体信息,至少包括:异常发生的次数、异常发生的时间、异常对应的代码,以及所述代码所属的包名、代码的具体位置、代码的调用顺序;
[0109]步骤308:读取该项目负责人及相关人员的邮箱地址,然后执行步骤309;
[0110]步骤309:读取具体开发人员的邮箱地址;然后执行步骤310;
[0111]步骤310:将异常信息发送给负责人、相关人员及具体的开发人员,然后执行步骤311;
[0112]例如,异常信息类型为空指针,调用顺序一致,且发生在cn.nubia.store.ap1.controller.TestController.]_&¥&的第100行中的次数有 100次,那么,则记录这100次异常发生的时间,并将其异常类型、异常信息、异常的调用顺序一起作为邮件的内容进行发送。
[0113]步骤311:将已发送的异常信息进行标记,然后返回步骤303;
[0114]步骤312:结束。
[0115]如此,将统计好的异常信息发送给相关的负责人员,节省了相关的负责人员统计这些异常信息的时间,进而为相关的负责人员赢取了更多的处理异常的时间,提高了相关的负责人员解决该问题时的效率。另外,将具体问题通知给具体开发人员,提高了问题指派的效率及错误解决效率。
[0116]实施例四
[0117]图4为本发明实施例提供的信息处理装置的组成结构示意图,如图4所示,所述信息处理装置包括检测单元41、处理单元42、响应单元43;其中,
[0118]所述检测单元41,用于检测在遍历处理流程中的每一个单位处理过程中是否产生异常;
[0119]所述处理单元42,用于如果产生异常,过滤掉在每一个单位处理过程产生的异常,并获取与所述异常相关的信息;
[0120]所述响应单元43,用于待遍历处理流程结束后,向客户端返回过滤掉所述异常的结果。
[0121]上述方案中,所述处理单元42,还用于:
[0122]判断所述异常的类型;
[0123]查询所述异常对应的代码,确定所述代码所属的包名、代码的具体位置、代码的调用顺序;
[0124]获取所述代码对应的负责人员的联系方式。
[0125]上述方案中,可选地,所述装置还包括:
[0126]存储单元44,用于存储与所述异常相关的信息;
[0127]发送单元45,用于在满足触发条件时,读取与所述异常相关的信息,并将所述异常的异常信息通知所述异常对应的负责人员。
[0128]可选地,所述发送单元44,还用于:在将所述异常的异常信息通知所述异常对应的负责人员之前,根据异常类型、异常的具体位置、异常的调用顺序对各个异常进行分组。
[0129]可选地,所述发送单元44,还用于:
[0130]统计每一组中相同类型的异常发生的次数,并将重复的异常进行合并;
[0131]提取异常发生的时间;
[0132]读取所述异常对应的代码所对应的负责人员的联系方式;
[0133]将所述异常的异常信息通过所述联系方式发送给所述负责人员所持设备;
[0134]其中,所述异常信息包括:
[0135]异常发生的次数、异常发生的时间、异常对应的代码,以及所述代码所属的包名、代码的具体位置、代码的调用顺序。
[0136]上述信息处理装置可设置于服务器中。
[0137]本领域技术人员应当理解,图4中所示的信息处理装置中的各处理单元的实现功能,可参照前述信息处理方法的相关描述而理解。本领域技术人员应当理解,图4所示的信息处理装置中各处理单元,可通过运行于处理器上的程序而实现,也可通过具体地逻辑电路而实现。
[0138]在实际应用中,所述的信息处理装置中的检测单元41、处理单元42、响应单元43、存储单元44、发送单元45的具体结构均可对应于处理器。所述处理器具体的结构可以为中央处理器(CPU,Central Processing Unit)、数字信号处理器(DSP,Digital SignalProcessor)或可编程门阵列(FPGA,Field — Programmable Gate Array)等具有处理功能的电子元器件或电子元器件的集合。其中,所述处理器包括可执行代码,所述可执行代码存储在存储介质中,所述处理器可以通过总线等通信接口与所述存储介质中相连,在执行具体的各模块的对应功能时,从所述存储介质中读取并运行所述可执行代码。所述存储介质用于存储所述可执行代码的部分优选为非瞬间存储介质。
[0139]所述检测单元41、处理单元42、响应单元43、存储单元44、发送单元45可以集成对应于同一处理器,或分别对应不同的处理器;当集成对应于同一处理器时,所述处理器采用时分处理所述检测单元41、处理单元42、响应单元43、存储单元44、发送单元45对应的功能。
[0140]本实施例所述信息处理装置,在服务器进行遍历处理过程中产生异常时,尽可能地减小异常对整个遍历处理流程的影响,以保证不影响用户正常的使用,从而提高服务器接口容错性;由服务器侧确定异常发生在代码的哪一行、以及异常的具体类型等异常信息,节省了开发人员查询这些异常信息的时间,进而为开发人员赢取了更多的处理时间,提高了开发人员解决该问题时的效率。另外,将具体问题通知给具体开发人员,提高了问题指派的效率及错误解决效率。
[0141]需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0142]上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0143]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如R0M/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,月艮务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0144]以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
【主权项】
1.一种信息处理装置,其特征在于,所述装置包括: 检测单元,用于检测在遍历处理流程中的每一个单位处理过程中是否产生异常; 处理单元,用于如果产生异常,过滤掉在每一个单位处理过程产生的异常,并获取与所述异常相关的信息; 响应单元,用于待遍历处理流程结束后,向客户端返回过滤掉所述异常的结果。2.根据权利要求1所述的装置,其特征在于,所述处理单元,还用于: 判断所述异常的类型; 查询所述异常对应的代码,确定所述代码所属的包名、代码的具体位置、代码的调用顺序; 获取所述代码对应的负责人员的联系方式。3.根据权利要求2所述的装置,其特征在于,所述装置还包括: 存储单元,用于存储与所述异常相关的信息; 发送单元,用于在满足触发条件时,读取与所述异常相关的信息,并将所述异常的异常信息通知所述异常对应的负责人员。4.根据权利要求3所述的装置,其特征在于,发送单元,还用于:在将所述异常的异常信息通知所述异常对应的负责人员之前, 根据异常类型、异常的具体位置、异常的调用顺序对各个异常进行分组。5.根据权利要求4所述的装置,其特征在于,所述发送单元,还用于: 统计每一组中相同类型的异常发生的次数,并将重复的异常进行合并; 提取异常发生的时间; 读取所述异常对应的代码所对应的负责人员的联系方式; 将所述异常的异常信息通过所述联系方式发送给所述负责人员所持设备; 其中,所述异常信息包括: 异常发生的次数、异常发生的时间、异常对应的代码,以及所述代码所属的包名、代码的具体位置、代码的调用顺序。6.一种信息处理方法,其特征在于,所述方法包括: 检测在遍历处理流程中的每一个单位处理过程中是否产生异常; 如果是,过滤掉在每一个单位处理过程产生的异常,并获取与所述异常相关的信息; 待遍历处理流程结束后,向客户端返回过滤掉所述异常的结果。7.根据权利要求6所述的方法,其特征在于,所述获取与所述异常相关的信息,包括: 判断所述异常的类型; 查询所述异常对应的代码,确定所述代码所属的包名、代码的具体位置、代码的调用顺序; 获取所述代码对应的负责人员的联系方式。8.根据权利要求7所述的方法,其特征在于,所述获取与所述异常相关的信息之后,还包括: 存储与所述异常相关的信息; 在满足触发条件时,读取与所述异常相关的信息,并将所述异常的异常信息通知所述异常对应的负责人员。9.根据权利要求8所述的方法,其特征在于,所述将所述异常的异常信息通知所述异常对应的负责人员之前,还包括: 根据异常类型、异常的具体位置、异常的调用顺序对各个异常进行分组。10.根据权利要求9所述的方法,其特征在于,所述将所述异常的异常信息通知所述异常对应的负责人员,包括: 统计每一组中相同类型的异常发生的次数,并将重复的异常进行合并; 提取异常发生的时间; 读取所述异常对应的代码所对应的负责人员的联系方式; 将所述异常的异常信息通过所述联系方式发送给所述负责人员所持设备; 其中,所述异常信息包括: 异常发生的次数、异常发生的时间、异常对应的代码,以及所述代码所属的包名、代码的具体位置、代码的调用顺序。
【文档编号】G06F11/14GK106055429SQ201610352231
【公开日】2016年10月26日
【申请日】2016年5月24日
【发明人】倪秉炬
【申请人】努比亚技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1