一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据处理方法、装置、设备和存储介质与流程

2022-02-20 13:31:39 来源:中国专利 TAG:


1.本发明涉及数据处理技术领域,尤其涉及一种数据处理方法、装置、电子设备和计算机存储介质。


背景技术:

2.相关技术中,互联网产品的迅速普及,使得公司越来越注重网络(web)前端的用户体验。相对于传统的后端技术,web前端交互更能影响到用户的使用感受。当前端发生异常时,例如脚本运行异常、资源加载异常等,由于捕获机制、传输机制、定位机制的不完善,前端异常不容易被发现;此外,当前的前端异常问题全部依赖工程师人工解决,而人工处理异常效率低且耗时,且前端的异常检测及修复效率都会影响到用户体验。这里的web是指全球广域网,也称为万维网,是一种基于超文本和超文本传输协议(hypertext transfer protocol,http)的、全球性的、动态交互的、跨平台的分布式图形信息系统,是建立在因特网(internet)上的一种网络服务,为浏览者在因特网上查找和浏览信息提供了图形化的、易于访问的直观界面,其中的文档及超级链接将因特网上的信息节点组织成一个互为关联的网状结构。
3.现有数据处理技术中,对于检测到的web前端发生的异常问题,全部是通过具有一定经验的工程师来解决的,这种人工处理异常问题的方法效率低且比较耗时,用户体验较差。


技术实现要素:

4.本发明期望提供数据处理的技术方案,以解决相关技术中全部通过人工处理异常问题所导致的效率低、耗时较长以及用户体验较差的问题。
5.本发明提供了一种数据处理方法,所述方法包括:
6.对网络服务前端进行异常检测获得异常信息;
7.确定所述异常信息对应的异常种类,根据所述异常种类和预设的异常修复规则,自动生成所述异常信息对应的异常修复方案;
8.根据所述异常修复方案对所述网络服务前端进行异常修复。
9.可选地,所述根据所述异常种类和预设的异常修复规则,自动生成所述异常信息对应的异常修复方案,包括:
10.在预设的修复规则中根据所述异常种类,查找所述异常信息所对应的异常修复规则;
11.根据查找到的异常修复规则,自动生成所述异常信息对应的异常修复方案。
12.可选地,确定所述异常信息对应的异常种类包括以下至少一项:资源加载异常、代码执行异常。
13.可选地,所述根据查找到的异常修复规则,自动生成所述异常信息对应的异常修复方案,包括:
14.在所述异常信息表示资源加载异常的情况下,根据查找到的资源加载异常对应的异常修复规则,在网络服务前端的资源库中确定修复所述资源加载异常需要的资源,基于所述修复所述资源加载异常需要的资源,自动生成所述资源加载异常对应的异常修复方案;
15.在所述异常信息表示代码执行异常的情况下,根据查找到的代码执行异常对应的异常修复规则,自动生成所述代码执行异常对应的异常修复方案。
16.可选地,所述方法还包括:
17.通过测评所述异常修复方案,得到所述修复方案的测评结果,根据所述测评结果判断所述异常修复方案的可行性。
18.可选地,所述根据所述测评结果判断异常修复方案的可行性,包括:
19.在所述测评结果为不存在异常的情况下,确定所述异常修复方案是可行的;
20.在所述测评结果为存在异常的情况下,确定所述异常修复方案是不可行的。
21.可选地,所述方法还包括:
22.针对不可行的异常修复方案,采用其它修复方案来替换不可行的异常修复方案,其中,所述其它修复方案对应的测评结果不存在异常情况。
23.可选地,所述方法还包括:
24.根据所述其它修复方案更新所述预设的异常修复规则。
25.可选地,所述根据所述异常修复方案对所述网络服务前端进行异常修复,包括:
26.在所述异常信息表示资源加载异常的情况下,通过所述资源加载异常对应的资源替换所述资源加载异常对应的资源;
27.在所述异常信息表示代码执行异常的情况下,根据所述修复方案自动生成所述修复方案对应的修复代码,并通过所述修复代码替换所述代码执行异常对应的代码。
28.本发明还提供了一种数据处理装置,所述装置包括:异常检测模块和异常处理模块,其中,
29.异常检测模块,用于对网络服务前端进行异常检测获得异常信息;
30.异常处理模块,用于确定所述异常信息对应的异常种类,根据所述异常种类和预设的异常修复规则,自动生成所述异常信息对应的异常修复方案;根据所述异常修复方案对所述网络服务前端进行异常修复。
31.可选地,所述异常处理模块用于在预设的修复规则中根据所述异常种类,查找所述异常信息所对应的异常修复规则;根据查找到的异常修复规则,自动生成所述异常信息对应的异常修复方案。
32.可选地,确定所述异常信息对应的异常种类包括以下至少一项:资源加载异常、代码执行异常。
33.可选地,所述异常处理模块用于在所述异常信息表示资源加载异常的情况下,根据查找到的资源加载异常对应的异常修复规则,在网络服务前端的资源库中确定修复所述资源加载异常需要的资源,基于修复所述资源加载异常需要的资源,自动生成所述资源加载异常对应的异常修复方案;在所述异常信息表示代码执行异常的情况下,根据查找到的代码执行异常对应的异常修复规则,自动生成所述代码执行异常对应的异常修复方案。
34.可选地,所述异常处理模块还用于通过测评所述异常修复方案,得到所述修复方
案的测评结果,根据所述测评结果判断所述异常修复方案的可行性。
35.可选地,所述异常处理模块用于在所述测评结果为不存在异常的情况下,确定所述异常修复方案是可行的;在所述测评结果为存在异常的情况下,确定所述异常修复方案是不可行的。
36.可选地,所述异常处理模块用于针对不可行的异常修复方案,采用其它修复方案来替换不可行的异常修复方案,其中,所述其它修复方案对应的测评结果不存在异常情况。
37.可选地,所述异常处理模块用于根据所述其它修复方案更新所述预设的异常修复规则。
38.可选地,所述异常处理模块用于在所述异常信息表示资源加载异常的情况下,通过所述资源加载异常对应的资源替换所述资源加载异常对应的资源;在所述异常信息表示代码执行异常的情况下,根据所述修复方案自动生成所述修复方案对应的修复代码,并通过所述修复代码替换所述代码执行异常对应的代码。
39.本发明还提供了一种电子设备,包括处理器和用于存储能够在处理器上运行的计算机程序的存储器;其中,
40.所述处理器用于运行所述计算机程序时,执行上述任意一种所述的数据处理方法。
41.本发明还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任意一种所述的数据处理方法。
42.可以看出,本发明中的数据处理方法,首先通过对网络服务前端进行异常检测获得异常信息,然后确定所述异常信息对应的异常种类,根据所述异常种类和预设的异常修复规则,自动生成所述异常信息对应的异常修复方案,最后根据所述异常修复方案对所述网络服务前端进行异常修复,由于该数据处理方法是根据异常信息对应的异常种类和预设的异常修复规则,自动生成异常修复方案的,并不是完全通过人工来修复检测到的异常的,因此,该数据处理方法效率更高、耗时更短、用户体验也更好,进一步地,通过更新后的异常修复规则所确定的异常修复方案,可以提高修复方案的可行性,提高自动数据处理的效率。
43.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本发明。
附图说明
44.此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本发明的实施例,并与说明书一起用于说明本发明的技术方案。
45.图1为本发明的一种数据处理方法的流程图;
46.图2为本发明的web前端异常检测装置的组成结构示意图;
47.图3为本发明的数据处理装置的组成结构示意图;
48.图4为本发明的一种异常修复系统的组成结构示意图;
49.图5为本发明的电子设备的结构示意图。
具体实施方式
50.以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所提供的
实施例仅仅用以解释本发明,并不用于限定本发明。另外,以下所提供的实施例是用于实施本发明的部分实施例,而非提供实施本发明的全部实施例,在不冲突的情况下,本发明记载的技术方案可以任意组合的方式实施。
51.需要说明的是,在本发明中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的方法或者装置不仅包括所明确记载的要素,而且还包括没有明确列出的其他要素,或者是还包括为实施方法或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括该要素的方法或者装置中还存在另外的相关要素(例如方法中的步骤或者装置中的单元,例如的单元可以是部分电路、部分处理器、部分程序或软件等等)。
52.本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括a、b、c中的至少一种,可以表示包括从a、b和c构成的集合中选择的任意一个或多个元素。
53.例如,本发明提供的数据处理方法包含了一系列的步骤,但是本发明提供的数据处理方法不限于所记载的步骤,同样地,本发明提供的数据处理装置包括了一系列模块,但是本发明提供的装置不限于包括所明确记载的模块,还可以包括为获取相关信息、或基于信息进行处理时所需要设置的模块。
54.本发明可以应用于终端和服务器等硬件或硬件组成的计算机系统中,并可以与众多其它通用或专用计算系统环境或配置一起操作,或者可通过处理器运行计算机可执行代码的方式实现本发明。这里,终端可以是瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统,等等,服务器可以是服务器计算机系统小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
55.终端、服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
56.目前一些专利文献提出了一些方法捕获前端异常信息、进行异常处理,如在收集网页前端的异常信息时,利用xmlhttprequest中的readystatechange事件捕获资源加载异常,该方法是使用浏览器document的readystate属性表示资源的下载状态,readystate状态的改变会触发readystatechange事件。将捕获的异常信息和浏览器信息上报到异常处理服务器,然后接受来自异常处理服务器的漏洞更新。或者在处理javascript(js)代码异常时,通过onerror事件处理器和try...catch...捕获异常,重新定义js代码中的异常事件处理器,拦截js代码中异常事件处理方法,并劫持且重写js代码中的回调方法,在回调方法中写入js代码异常捕获处理逻辑,并将捕获的js代码异常信息进行上报处理。这里,javascript作为一种基于对象、简单且内置支持类型的直译式脚本语言,其解释器被称为javascript引擎,属于浏览器的一部分,广泛用于客户端的脚本语言,最早是在超文本标记
语言(hypertext markup language,html)(标准通用标记语言下的一个应用)网页上使用,用来给html网页增加动态功能。xmlhttprequest方法用于通过http请求加载远程数据,是交互式的网页开发技术ajax(异步javascript和可扩展标记语言(extensible markup language,xml),asynchronous javascript and xml)的核心的内容,它能够为页面中的javascript脚本提供特定的通信方式,从而使页面的javascript脚本和服务器之间形成动态交互的效果,xmlhttprequest的最大的优点是页面内的javascript脚本可以不用刷新页面,而直接和服务器发生交互,从而实现页面无刷新的效果。
57.进一步地,还存在提供一种网页异常检测装置与方法,只检测web页面中是否存在错误的js文件和层叠样式表(cascading style sheets,css文件),当发现错误的js文件和css时,捕获以上两种文件的文件信息作为错误信息;将捕获的错误信息、网页的属性信息、统一资源定位符信息进行整合,发送整合后的信息到服务端进行网页异常检测。
58.目前这些技术都存在一定的缺点,如针对前端异常问题并没有提出任何自动或半自动修复方法,完全依赖人工处理,效率低;前端异常检测主要集中在检测网页的运行环境,并不是运行时异常;捕获异常类型并不够全面,例如,只能捕获到401未授权异常、无法补货到404资源异常。且利用xmlhttprequest中的readystatechange事件捕获脚本异常时,由于xmlhttprequest在浏览器兼容性上并不是非常友好,容易引发兼容性问题而导致脚本异常无法捕获。同时,对于js文件异常信息,提供的异常信息比较少,只包括:错误消息、错误页面的统一资源定位符(uniform resource locator,url)、发生错误的代码行。这里,url是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。
59.为了解决上述技术问题,本发明提出一种数据处理方法,图1为本发明的一种数据处理方法的流程图,如图1所示,该流程可以包括:
60.步骤101:对网络服务前端进行异常检测获得异常信息。
61.在一种实施方式中,网络服务前端可以是web前端;对网络服务前端进行异常检测获得异常信息,可以是将异常检测脚本文件嵌入到web前端项目对应的文件集中,以捕获发生在网络前端的异常问题;具体地,当浏览器出现前端异常问题时,可以通过异常检测脚本捕获异常问题,并对捕获到的异常问题所对应的异常进行分类,异常种类可以分为资源加载异常和代码执行异常,这里的代码执行异常可以是js代码执行异常;还可以获取其它相关信息,例如,可以获取web浏览器信息、业务代码信息等,这里,异常信息可以至少包括通过异常检测脚本文件自动捕获到的异常问题和获取的其它相关信息。具体地,对网络服务前端进行异常检测获得异常信息可以是将异常检测脚本文件嵌入到web前端项目中,捕获web前端异常信息并自动根据所述异常信息的来源对所述异常信息对应的异常进行异常分类,将异常分为资源加载异常和代码执行异常,最后将分类后的各类异常对应的异常信息进行封装,并将封装后所获得的信息上报给后端服务器。
62.图2为本发明的web前端异常检测装置的组成结构示意图,如图2所示,所述web前端异常检测装置包括检测模块21和通知模块22,所述检测模块21包括资源加载异常检测模块211,js代码异常检测模块212,其中,所述检测模块21用于检测web前端的异常信息,并根据检测渠道判断异常类型,资源加载异常检测模块211主要用来检测资源加载类型的异常信息,并标注异常类型为资源加载异常;js代码异常检测模块212主要用来检测javascript
代码执行异常,并标注为js代码异常。通知模块22,用于将检测模块21检测到的web前端异常通知给后端服务器,方便开发人员定位异常信息处理故障。
63.进一步地,所述资源加载异常检测模块可以实现以下三种检测方式中的一种或多种的组合:
64.在html资源标签上注明onerror事件处理程序进行检测;
65.使用window.performance.getentries()方法获取当前已经获得的所有资源,同html页面中资源进行比对,找到未被加载的资源;
66.使用window.addeventlistener(

error’,function(event){})方法检测资源加载异常。
67.所述js代码异常检测模块可以实现以下三种检测方式的组合:
68.使用javascript语言标准中提供的try...catch...代码块进行js代码执行异常检测;
69.使用window.onerror事件处理程序进行js代码执行异常检测;
70.使用window.addeventlistener(

unhandledrejection’,function(event){})
71.其中,onerror事件是浏览器在文档或图像加载过程中发生错误时被触发的计算机事件。javascript语言中提供的try...catch...代码块只适合于检测部分代码是否存在异常;window.onerror事件处理程序能够检测到大部分js代码执行异常,但是无法检测到promise方法产生的异步异常,而window.addeventlistener(

unhandledrejection’,function(event){})则能够针对性地检测到promise方法产生的异步异常,基于此,通过上述三种检测方式地组合可以克服任意一种方式所存在地缺点,能够检测到所有的js代码异常。
72.步骤102:确定所述异常信息对应的异常种类,根据所述异常种类和预设的异常修复规则,自动生成所述异常信息对应的异常修复方案。
73.作为一种实施方式,确定所述异常信息对应的异常种类可以是确定所述异常信息对应的异常种类包括以下至少一项:资源加载异常、代码执行异常。资源加载异常可以是在资源加载的过程中漏加载资源所导致的异常,也可以是在资源加载的过程中加载了错误的资源所导致的异常,而代码执行异常可以是在执行代码时出现的异常,具体地,可以将代码执行异常分为以下7大类:分别为evalerror、internalerror、rangeerror、referenceerror、syntaxerror、typeerror、urierror。
74.预设的异常修复规则可以是预设的异常修复规则库,包括资源加载异常和所有类型的代码执行异常对应的修复规则,当然,这里预设的异常修复规则,可以针对一种类型的异常对应多种修复规则,也可以针对多种类型的异常对应一种修复规则。在一个示例中,异常修复方案可以是从异常信息对应的多个异常规则中确定的一个异常修复规则,也可以是异常信息对应的所有异常规则,例如,对于异常类型为referenceerror的异常,由于该异常是在尝试引用尚未声明的变量时被抛出的,出现这种情况的常见原因可以认为是引用的外部文件没有被正确加载,例如,没有正确加载jquery库文件和vue库文件,这种情况下即可被认为是资源加载异常,对应的修复规则包括从资源库中选择jquery库文件和vue库文件,自动替换出现异常的文件;出现上述异常的原因也可以被认为是代码中的变量没有经过声明就开始使用而导致的异常,针对这种情况的修复规则可以是,根据异常信息提示以及代
码运行上下文、命名空间,提前定义变量及类型,置入引用变量之前,显然,对于同一类型的异常可以存在多个修复规则,进而可以对应多个异常修复方案。
75.对于根据所述异常种类和预设的异常修复规则,自动生成所述异常信息对应的异常修复方案的实现方式,可以是首先明确异常信息分别对应哪些异常种类,然后根据确定的异常种类在预设的异常修复规则中确定这些异常种类对应的异常修复规则,根据确定的异常修复规则自动生成对应的异常修复方案。
76.步骤103:根据所述异常修复方案对所述网络服务前端进行异常修复。
77.在一种实施方式中,根据所述异常修复方案对所述网络服务前端进行异常修复的实现方式,可以是根据异常修复方案确定对应的修复代码或修复资源,替代异常代码或异常资源。
78.在实际应用中,步骤101至步骤103可以利用电子设备中的处理器实现,上述处理器可以为特定用途集成电路(application specific integrated circuit,asic)、数字信号处理器(digital signal processor,dsp)、数字信号处理装置(digital signal processing device,dspd)、可编程逻辑装置(programmable logic device,pld)、fpga、中央处理器(central processing unit,cpu)、控制器、微控制器、微处理器中的至少一种。
79.可以看出,本发明中的数据处理方法,通过对网络服务前端进行异常检测获得异常信息;确定所述异常信息对应的异常种类,根据所述异常种类和预设的异常修复规则,自动生成所述异常信息对应的异常修复方案;根据所述异常修复方案对所述网络服务前端进行异常修复。由于该数据处理方法是根据异常信息对应地异常种类和预设地异常修复规则,自动生成异常修复方案的,并不是完全通过人工处理来修复检测到的异常的,因此,该数据处理方法效率更高、耗时更短、用户体验也更好。
80.在一种实施方式中,所述根据所述异常种类和预设的异常修复规则,自动生成所述异常信息对应的异常修复方案,包括:在预设的修复规则中根据所述异常种类,查找所述异常信息所对应的异常修复规则;根据查找到的异常修复规则,自动生成所述异常信息对应的异常修复方案。
81.在一个示例中,在预设的修复规则中根据所述异常种类,查找所述异常信息所对应的异常修复规则,可以是先确定异常信息分别对应哪些种类的异常,然后在预设的修复规则中查找这些类型的异常所对应的所有修复规则,例如,当确定异常信息分别对应资源加载异常和referenceerror异常时,且预设的修复规则中资源加载异常对应的修复规则为a,referenceerror异常对应的修复规则为b和c时,即,在预设的修复规则中查找资源加载异常和referenceerror异常对应的修复规则为a、b和c;对于根据查找到的异常修复规则,自动生成所述异常信息对应的异常修复方案的实现方式,可以是从查找到的异常修复规则中,针对每种类型的异常自动选择对应的规则中的一个异常修复规则作为异常修复方案,也可以是将查找到的针对每种类型的异常的多个异常修复规则分别作为多个异常修复方案,例如,当针对异常类型1查找到修复规则a、b和c,针对异常类型2查找到修复规则d和e时,可以自动选择修复规则a、b、c中的一个作为类型1的修复方案,也可以自动将修复规则a、b、c作为异常类型1的多个修复方案;针对异常类型2,可以自动选择修复规则d和e中的一个作为类型2的修复方案,也可以自动将修复方案d和e作为异常类型2的多个修复方案。
82.在一种实施方式中,所述根据查找到的异常修复规则,自动生成所述异常信息对
应的异常修复方案,包括:在所述异常信息表示资源加载异常的情况下,根据查找到的资源加载异常对应的异常修复规则,在网络服务前端的资源库中确定修复所述资源加载异常需要的资源,基于所述修复所述资源加载异常需要的资源,自动生成所述资源加载异常对应的异常修复方案;在所述异常信息表示代码执行异常的情况下,根据查找到的代码执行异常对应的异常修复规则,自动生成所述代码执行异常对应的异常修复方案。
83.在一个示例中,网络服务前端的资源库用于存储所有网络服务前端的资源,包括html文件、javascript文件、css文件、图片、字体、文本等其它格式的资源,可以对于异常信息表示资源加载异常的情况,根据资源加载异常对应的异常修复规则,在网络服务前端的资源库中找到出现加载异常的资源对应的正确资源,进而将“通过正确的资源替代加载异常的资源”自动确定为所述资源加载异常对应的异常修复方案;可以对于异常信息表示代码执行异常的情况,根据查找到的代码执行异常对应的异常修复规则,自动选择异多个常修复规则中的一个作为所述代码执行异常对应的异常修复方案。
84.在一种实施方式中,所述方法还包括:通过测评所述异常修复方案,得到所述修复方案的测评结果,根据所述测评结果判断所述异常修复方案的可行性。
85.在一示例中,通过测评所述异常修复方案,得到所述修复方案的测评结果,根据所述测评结果判断所述异常修复方案的可行性的实现方式,可以是通过预先配置的静态代码规则和代码测评工具如eslint,来确定静态检测工具是否运行正常未发生报警,以实现对异常修复方案的初步测评,检测出异常修复方案是否存在形式问题,且在静态检测工具运行正常未发生报警的情况下,将异常修复方案推送到测试环境中以测验异常修复方案的最终正确性,同时,还将异常修复方案与原始代码进行比较确定差异,以保存异常修复方案。
86.在一种实施方式中,所述根据所述测评结果判断异常修复方案的可行性,包括:在所述测评结果为不存在异常的情况下,确定所述异常修复方案是可行的;在所述测评结果为存在异常的情况下,确定所述异常修复方案是不可行的。
87.在一示例中,可以是在测试环境测验解决方案的结果为正确解决方案的情况下,认为所述异常修复方案是可行的,在测试环境测验解决方案的结果为错误解决方案的情况下,认为所述异常修复方案是不可行的。
88.在一种实施方式中,所述方法还包括:针对不可行的异常修复方案,采用其它修复方案来替换不可行的异常修复方案,其中,所述其它修复方案对应的测评结果不存在异常情况。
89.在一个示例中,其它修复方案的获取方式可以是通过具有高技术水平的技术人员针对代码执行异常所确定的其它异常修复方案,例如,对于类型1的代码执行异常对应的异常修复方案a,确定的其它修复方案可以是预设的修复规则中不存在的修复规则b对应的修复方案b;针对不可行的异常修复方案,采用其它修复方案来替换不可行的异常修复方案,可以是针对不可行的异常修复方案,通过技术人员直接替换不可行的异常修复方案,例如,直接通过修复方案b替换修复方案a。
90.在一种实施方式中,所述方法还包括:根据所述其它异常修复方案更新所述预设的异常修复规则。
91.对于根据所述其它异常修复方案更新所述预设的异常修复规则的实现方式,可以是将其它修复方案对应的修复规则添加到预设的异常修复规则中,例如,将其它修复方案a
对应的修复规则a添加到预设的异常修复规则中,以实现对异常修复规则的更新,进而通过更新后的异常修复规则所确定的异常修复方案,可以提高修复方案的可行性,提高自动数据处理的效率。
92.在一种实施方式中,所述根据所述异常修复方案对所述网络服务前端进行异常修复,包括:在所述异常信息表示资源加载异常的情况下,通过所述资源加载异常对应的资源替换所述资源加载异常对应的资源;在所述异常信息表示代码执行异常的情况下,根据所述修复方案自动生成所述修复方案对应的修复代码,并通过所述修复代码替换所述代码执行异常对应的代码。
93.在一示例中,可以是对于异常信息表示资源加载异常的情况,采用资源加载异常对应的资源替换所述资源加载异常对应的资源,对于异常信息表示代码执行异常的情况,采用修复方案对应的修复代码替换代码执行异常对应的代码。
94.在前述实施例提出的数据处理方法的基础上,本发明提出了一种数据处理装置。
95.图3为本发明的数据处理装置的组成结构示意图,如图3所示,该装置可以包括:异常检测模块301、异常处理模块302,其中,
96.异常检测模块301,用于对网络服务前端进行异常检测获得异常信息;
97.异常处理模块302,用于确定所述异常信息对应的异常种类,根据所述异常种类和预设的异常修复规则,自动生成所述异常信息对应的异常修复方案;根据所述异常修复方案对所述网络服务前端进行异常修复。
98.可选地,所述异常处理模块302用于在预设的修复规则中根据所述异常种类,查找所述异常信息所对应的异常修复规则;
99.根据查找到的异常修复规则,自动生成所述异常信息对应的异常修复方案。
100.可选地,确定所述异常信息对应的异常种类包括以下至少一项:资源加载异常、代码执行异常。
101.可选地,所述异常处理模块302用于在所述异常信息表示资源加载异常的情况下,根据查找到的资源加载异常对应的异常修复规则,在网络服务前端的资源库中确定修复所述资源加载异常需要的资源,基于所述修复所述资源加载异常需要的资源,自动生成所述资源加载异常对应的异常修复方案;
102.在所述异常信息表示代码执行异常的情况下,根据查找到的代码执行异常对应的异常修复规则,自动生成所述代码执行异常对应的异常修复方案。
103.可选地,所述异常处理模块302还用于通过测评所述异常修复方案,得到所述修复方案的测评结果,根据所述测评结果判断所述异常修复方案的可行性。
104.可选地,所述异常处理模块302还用于在所述测评结果为不存在异常的情况下,确定所述异常修复方案是可行的;在所述测评结果为存在异常的情况下,确定所述异常修复方案是不可行的。
105.可选地,所述异常处理模块302还用于针对不可行的异常修复方案,采用其它修复方案来替换不可行的异常修复方案,其中,所述其它异常修复方案对应的测评结果不存在异常情况。
106.可选地,所述异常处理模块302还用于根据所述其它异常修复方案更新所述预设的异常修复规则。
107.可选地,所述异常处理模块302用于在所述异常信息表示资源加载异常的情况下,通过所述资源加载异常对应的资源替换所述资源加载异常对应的资源;
108.在所述异常信息表示代码执行异常的情况下,根据所述修复方案自动生成所述修复方案对应的修复代码,并通过所述修复代码替换所述代码执行异常对应的代码。
109.实际应用中,异常检测模块301和异常处理模块302可以利用电子设备中的处理器实现,上述处理器可以为asic、dsp、dspd、pld、fpga、cpu、控制器、微控制器、微处理器中的至少一种。
110.在前述实施例提出的数据处理装置的基础上,本发明提出了一个异常处理系统。
111.图4为本发明的一种异常修复系统的组成结构示意图,如图4所示,该系统可以包括:接收模块401,资源加载异常修复模块402,js代码异常修复模块403。其中,其中接收模块401用于接收网络前端的异常信息;资源加载异常修复模块402用于自动修复资源加载异常;js代码异常修复模块403用于修复js代码异常;所述资源加载异常修复模块402包括,存储模块4021和分发模块4022,存储模块4021用于存储包括html文件、js文件、css文件、图片、字体、文本等其它格式的资源网络前端的资源;分发模块4022,主要用于客户端授权、资源分发。所述js代码异常修复模块403包括,异常分类模块4031,用于异常分类;异常解决模块4032,主要用于自动生成异常解决方案;评估模块4033,判断异常解决模块4042给出的解决方案是否合理有效;学习模块4034,根据异常解决模块4032以及评估模块3033进行差异化学习;分发模块4035,将修改后的代码文件分发到指定服务器上。
112.具体地,异常分类模块4031将js代码异常分为以下7大类:evalerror、internalerror、rangeerror、referenceerror、syntaxerror、typeerror、urierror。
113.异常解决模块4032可以根据异常分类模块4031的分类结果、学习模块4034的学习经验以及预定义的修改规则,自动生成修复方案,进而生成正确的代码片段。具体地,可以是异常分类模块4031根据浏览器上报的异常信息,对异常进行分类,以referenceerror类型的异常为例,根据学习模块4034的学习经验可知,referenceerror类型的异常是在尝试引用尚未声明的变量时被抛出,出现这种异常的常见原因可以认为是引用的外部文件没有被正确加载而引起的,例如没有正确加载jquery库文件和vue库文件,这种情况下的异常可被人为是资源加载异常,对于资源加载异常的解决方案可以是在存储模块4021中查找到资源加载异常对应的资源,并通过分发模块4022发送所述资源,实现对资源加载异常对应的异常资源的替换;当然,引起referenceerror类型的异常的原因也可以认为是代码中的变量没有经过声明就开始使用而引起的,对于这种情况的解决方案是,根据异常信息提示以及代码运行上下文、命名空间,提前定义变量及类型,置入引用变量之前;显然,上述解决异常问题的方法也可以作为学习模块4034的学习经验;经过异常解决模块4032处理后,异常处理系统已经具备了一定解决异常的初步解决能力。
114.评估模块4033基于异常解决模块4032的异常解决方案和预先配置的静态代码规则,运行代码测评工具如eslint,查看静态检测工具是否运行正常无错误信息报警,在确定运行正常无错误信息报警的情况下,再通过测试环境测验异常解决方案的正确性,并将异常解决方案与原始代码比较,存储异常解决方案,最后将以上步骤生成评估报告供开发人员做最终评估;如果异常解决模块4032的异常解决方案在测试环境中运行正常且无异常报错,则由技术人员同意后,可自动将解决异常后的代码分发到生产服务器;如果存在异常报
告,则通过技术人员确定异常解决方案,解决异常后,更新学习模块4034,如此,增加了学习模块4034的学习经验,更有利于异常解决模块4032解决后续的异常问题。
115.分发模块4035可以将修改后的代码文件、修复脚本分发到指定服务器上。
116.另外,在本实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
117.所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对相关技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read onlymemory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
118.具体来讲,本实施例中的一种数据处理方法对应的计算机程序指令可以被存储在光盘,硬盘,u盘等存储介质上,当存储介质中的与一种数据处理方法对应的计算机程序指令被一电子设备读取或被执行时,实现前述实施例的任意一种数据处理方法。
119.基于前述实施例相同的技术构思,参见图5,其示出了本发明提供的一种电子设备,可以包括:存储器501和处理器502;其中,
120.所述存储器501,用于存储计算机程序和数据;
121.所述处理器502,用于执行所述存储器中存储的计算机程序,以实现前述实施例的任意一种数据处理方法。
122.在实际应用中,上述存储器501可以是易失性存储器(volatile memory),例如ram;或者非易失性存储器(non-volatile memory),例如rom,快闪存储器(flash memory),硬盘(hard disk drive,hdd)或固态硬盘(solid-state drive,ssd);或者上述种类的存储器的组合,并向处理器1002提供指令和数据。
123.上述处理器502可以为asic、dsp、dspd、pld、fpga、cpu、控制器、微控制器、微处理器中的至少一种。可以理解地,对于不同的增强现实云平台,用于实现上述处理器功能的电子器件还可以为其它,本发明不作具体限定。
124.在一些实施例中,本发明提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述
125.上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述
126.本技术所提供的各方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
127.本技术所提供的各产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
128.本技术所提供的各方法或设备实施例中所揭露的特征,在不冲突的情况下可以任
意组合,得到新的方法实施例或设备实施例。
129.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
130.上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献