一种分析引擎的生成方法、装置、设备及存储介质与流程

文档序号:30970196发布日期:2022-08-02 20:30阅读:71来源:国知局
一种分析引擎的生成方法、装置、设备及存储介质与流程

1.本公开涉及数据处理领域,尤其涉及一种分析引擎的生成方法、装置、设备及存储介质。


背景技术:

2.随着应用程序用户规模的急剧扩大,开发人员面对的用户场景越来越复杂,一旦存在用户反馈的体验问题需要解决时,需要针对该问题复原用户场景,在复原的用户场景下解决该体验问题。
3.目前,通过构建分析引擎的方式复原用户场景,通过运行分析引擎解决该用户场景下的用户体验问题,但是,目前构建分析引擎的方式较复杂,且针对不同的用户场景的分析引擎均需要单独实现,彼此不可复用,因此,分析引擎的构建效率较低,影响用户反馈的体验问题的解决进度。


技术实现要素:

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.图1为本公开实施例提供的一种分析引擎的生成方法流程图;
39.图2为本公开实施例提供的一种分析引擎的执行过程示意图;
40.图3为本公开实施例提供的一种分析引擎的生成装置结构示意图;
41.图4为本公开实施例提供的一种分析引擎的生成设备结构示意图。
具体实施方式
42.为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
43.在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
44.本公开实施例中用户可以基于分析需求选择分析原子,然后基于选中的分析原子自动化的构建分析引擎,与现有技术中基于分析需求人工编写分析代码相比,本公开实施例能够提高分析引擎的构建效率。另外,分析原子在不同的分析引擎的构建中可复用,进一步的简化了分析引擎的构建过程。
45.具体的,本公开实施例提供了一种分析引擎的生成方法,首先,响应于针对至少一个分析原子的选中操作,将所述至少一个分析原子确定为目标分析原子。然后获取目标分析原子的参数信息,进而将目标分析原子的参数信息添加到预设结构模板中,得到目标分析原子对应的任务单元,最终,基于目标分析原子对应的任务单元,生成目标分析引擎。
46.基于此,本公开实施例提供了一种分析引擎的生成方法,参考图1,为本公开实施例提供的一种分析引擎的生成方法流程图,该方法包括:
47.s101:响应于针对至少一个分析原子的选中操作,将所述至少一个分析原子确定为目标分析原子。
48.其中,分析原子,也可以称为原子能力,为用于实现某个指定功能的方法,用于构建分析引擎的最小单元,可复制,不可拆分。
49.例如,分析原子可以为用于实现组件搜索功能的方法,也可以为用于实现查找用户的异常信息功能的方法等,在此不限制分析原子可以实现的功能。
50.本公开实施例中,在接收到针对至少一个分析原子的选中操作后,将被选中的分析原子确定为目标分析原子。其中,目标分析原子可以包括一个或多个分析原子,具体的,可以基于人机交互ui界面由用户从多个分析原子中确定用于构建目标分析引擎的目标分析原子。
51.实际应用中,目标分析原子可以为从预先创建的分析原子中选择的,也可以为基
于目标分析引擎的构建需求实时创建的。
52.一种可选的实施方式中,在确定目标分析原子之前,可以创建分析原子,用于作为目标分析原子的可选原子。具体的,首先,接收原子参数信息和原子功能代码,然后,基于该原子参数信息和原子功能代码生成分析原子。其中,原子参数信息可以包括原子名称、原子输入参数和代码调用路径等,所述代码调用路径用于调用所述原子功能代码。
53.实际应用中,可以基于人机交互ui界面实现分析原子的创建功能。首先,在接收到分析原子的创建操作时,显示ui界面,然后基于该ui界面接收用户输入的原子名称,例如为finduserissue,另外,用户还可以输入针对该分析原子的描述,例如查找用户的异常信息。针对该分析原子的原子输入参数,用户也可以通过ui界面输入。其中,分析原子的原子输入参数通常为jason对象,用于指定该分析原子的输入内容。
54.另外,原子创建的用户还需要指定该分析原子的代码调用路径,代码调用路径可以为基于http与服务器到的交互方式确定,例如基于get方法或者post方法确定。如果用户选择get方法,则输入get方法对应的调用地址,作为该分析原子的代码调用路径。同样的,如果用户选择post方法,则输入post方法对应得调用地址,作为该分析原子的代码调用路径。
55.另外,原子创建的用户还需要输入该分析原子的原子功能代码,例如,原子功能代码可以为一段具体可执行的代码片段,也就可以是一个http接口的url地址,通过该url地址能够调用对应的代码片段。针对原子功能代码的类型,还可以作为用户的输入内容之一,即用户还可以输入原子功能代码的类型为代码片段类型或者http接口类型等。
56.实际应用中,可以预先设置原子创建规范,用户基于原子创建规范输入的原子参数信息和原子功能代码之后,即可成功创建分析原子,用于作为目标分析原子的可选原子。
57.s102:获取所述目标分析原子的参数信息。
58.本公开实施例中,在确定目标分析原子之后,获取目标分析原子的参数信息。其中,目标分析原子的参数信息可以包括创建该目标分析原子时由用户输入的原子参数信息,以及目标分析原子的执行顺序等。
59.具体的,目标分析原子的参数信息可以包括原子名称、输入参数、代码调用路径以及执行顺序等信息。其中,执行顺序是指多个目标分析原子之间的先后执行顺序关系。
60.s103:基于所述目标分析原子的参数信息和预设代码结构模板,生成所述目标分析原子对应的任务单元。
61.本公开实施例中,预先构建代码结构模板,用于生成目标分析原子对应的任务单元。其中,预设代码结构模板中预先设定了目标分析原子的参数信息分别对应的位置,以便在获取到目标分析原子的参数信息之后,将参数信息添加到预设代码结构模板中的对应位置,生成该目标分析原子对应的任务单元。
62.以目标分析原子为“finduserissue”分析原子为例,生成的“finduserissue”对应的任务单元如下所示:
[0063][0064][0065]
其中,上述加下划线的位置属于预设代码结构模板中的固有内容,在对应的位置添加对应的参数,能够生成目标分析原子对应的任务单元。
[0066]
另外,目标分析原子的参数信息包括目标分析原子的下一跳执行原子,在上述预设代码结构模板中的“"next":”对应的位置添加目标分析原子的下一跳执行原子即可,在
任务单元生成后,目标分析原子对应的任务单元中包括该下一跳执行原子对应的任务单元标识,从而保证了目标分析引擎中各个目标分析原子对应的任务单元之间的执行顺序。
[0067]
s104:基于所述目标分析原子对应的任务单元,生成目标分析引擎。
[0068]
本公开实施例中,在生成各个目标分析原子分别对应的任务单元之后,将各个任务单元进行组合,生成目标分析引擎。
[0069]
一种可选的实施方式中,目标分析原子的数量为多个,且各个目标分析原子之间具有执行顺序,基于该执行顺序确定首位执行的目标分析原子,将该目标分析原子对应的任务单元,确定为目标分析引擎中首位执行的任务单元。
[0070]
另外,基于该执行顺序确定最后一个执行的目标分析原子对应的下一跳任务单元为结果回传任务单元,即在最后一个目标分析原子对应的任务单元执行结束后,触发结果回传任务单元的执行,用于回传目标分析引擎的执行结果,例如将执行结果存储于预设位置,如数据集中。
[0071]
最终,在将首位执行的任务单元以及结果回传任务单元设置完成后,基于各个任务单元生成目标分析引擎,该目标分析引擎的执行即按照执行顺序对各个任务单元的执行,最终输入执行结果。
[0072]
以目标分析引擎包括目标分析原子'finduserissue'、'issueblame'、'issuecrash'和'shapercallback'为例,基于执行顺序构建的目标分析引擎的结构可以为:首位执行的任务单元为'finduserissue'对应的任务单元,在'finduserissue'对应的任务单元执行结束后,再依次执行'issueblame'和'issuecrash'分别对应的任务单元,最终执行'shapercallback'对应的任务单元,实现对目标分析引擎的执行结果的回传。
[0073]
本公开实施例提供的分析引擎的生成方法中,首先,响应于针对至少一个分析原子的选中操作,将所述至少一个分析原子确定为目标分析原子,然后获取目标分析原子的参数信息,进而将目标分析原子的参数信息添加到预设结构模板中,得到目标分析原子对应的任务单元,最终,基于目标分析原子对应的任务单元,生成目标分析引擎。本公开实施例中用户可以基于分析需求选择分析原子,然后基于选中的分析原子自动化的构建分析引擎,与现有技术中基于分析需求人工编写分析代码相比,本公开实施例能够提高分析引擎的构建效率。另外,分析原子在不同的分析引擎的构建中可复用,进一步的简化了分析引擎的构建过程。
[0074]
在上述实施例的基础上,本公开实施例还可以确定目标分析引擎的输入参数,以便于对目标分析引擎运行时接收的输入数据进行验证,保证目标分析引擎的正常运行。
[0075]
具体的,用于生成目标分析引擎的目标分析原子的参数信息中包括输入参数,用于指定目标分析原子对输入的要求。
[0076]
本公开实施例可以基于目标分析引擎所包括的各个目标分析原子的输入参数,确定目标分析引擎的输入参数。
[0077]
一种可选的实施方式中,将目标分析引擎中的各个目标分析原子的输入参数进行合并,作为该目标分析引擎的输入参数。
[0078]
另一种可选的实施方式中,为了解决各个目标分析原子存在输入参数相同的情况,本公开实施例可以对各个目标分析原子的输入参数合并且去重后,得到目标分析引擎的输入参数。
[0079]
具体的,假设目标分析原子包括第一分析原子和第二分析原子,首先将所述第一分析原子和所述第二分析原子的输入参数进行合并去重处理,得到合并后输入参数。然后,基于所述合并后输入参数,确定所述目标分析引擎的输入参数;其中,所述输入参数用于对所述目标分析引擎运行时接收的输入数据进行验证。
[0080]
实际应用中,在生成目标分析引擎之后,可以将目标分析引擎入库,后续用于处理待分析问题。
[0081]
在问题分析场景下,首先可以从库中选择一个分析引擎,然后接收该分析引擎的输入参数,该分析引擎可以基于该输入参数依次执行该分析引擎中包括的各个任务单元,最终输出分析结果。
[0082]
在分析引擎执行的过程中,各个任务单元的输出结果可以作为输入数据回调,继续参与到该分析引擎的执行,直到输出分析结果。其中,分析结果可以回写到指定位置,也可以直接展示在ui界面上。
[0083]
如图2所示,为本公开实施例提供的一种分析引擎的执行过程示意图,其中,分析引擎包括n+1个任务单元,task0-taskn,基于执行顺序,先后执行task0-taskn,直到task end输出分析结果。
[0084]
本公开实施例生成的目标分析引擎包括具有执行顺序的至少一个任务单元,在接收到输入数据后,基于执行顺序能够依次执行各个任务单元,最终输出分析结果。
[0085]
基于上述方法实施例,本公开还提供了一种分析引擎的生成装置,参考图3,为本公开实施例提供的一种分析引擎的生成装置结构示意图,所述装置包括:
[0086]
第一确定模块301,用于响应于针对至少一个分析原子的选中操作,将所述至少一个分析原子确定为目标分析原子;其中,所述分析原子为用于实现指定功能的方法;
[0087]
获取模块302,用于获取所述目标分析原子的参数信息;
[0088]
第一生成模块303,用于基于所述目标分析原子的参数信息和预设代码结构模板,生成所述目标分析原子对应的任务单元;
[0089]
第二生成模块304,用于基于所述目标分析原子对应的任务单元,生成目标分析引擎。
[0090]
一种可选的实施方式中,所述参数信息包括输入参数;所述装置还包括:
[0091]
第二确定模块,用于将所述目标分析原子的输入参数,确定为所述目标分析引擎的输入参数。
[0092]
一种可选的实施方式中,所述目标分析原子包括第一分析原子和第二分析原子;
[0093]
所述第二确定模块,包括:
[0094]
合并去重子模块,用于将所述第一分析原子和所述第二分析原子的输入参数进行合并去重处理,得到合并后输入参数;
[0095]
第一确定子模块,用于基于所述合并后输入参数,确定所述目标分析引擎的输入参数;其中,所述输入参数用于对所述目标分析引擎运行时接收的输入数据进行验证。
[0096]
一种可选的实施方式中,所述目标分析原子的参数信息包括所述目标分析原子的下一跳执行原子;所述目标分析原子对应的任务单元中包括所述下一跳执行原子对应的任务单元标识。
[0097]
一种可选的实施方式中,所述目标分析原子的数量为多个;所述装置还包括:
[0098]
第二确定模块,用于确定所述目标分析原子的执行顺序;
[0099]
相应的,所述第二生成模块,包括:
[0100]
第二确定子模块,用于基于所述执行顺序,从所述目标分析原子对应的任务单元中,确定首位执行的任务单元;
[0101]
第三确定子模块,用于将位于所述执行顺序中的最后一个目标分析原子对应的下一跳任务单元确定为结果回传任务单元;其中,所述结果回传任务单元用于回传执行结果;
[0102]
生成子模块,用于基于所述目标分析原子对应的任务单元、所述首位执行的任务单元以及所述结果回传任务单元,生成目标分析引擎。
[0103]
一种可选的实施方式中,所述装置还包括:
[0104]
接收模块,用于接收原子参数信息和原子功能代码;其中,所述原子参数信息包括原子名称、输入参数和代码调用路径,所述代码调用路径用于调用所述原子功能代码;
[0105]
第三生成模块,用于基于所述原子参数信息和所述原子功能代码生成分析原子;其中,所述分析原子用于作为目标分析原子的可选原子。
[0106]
本公开实施例提供了一种分析引擎的生成装置,首先,确定目标分析原子,然后获取目标分析原子的参数信息,进而将目标分析原子的参数信息添加到预设结构模板中,得到目标分析原子对应的任务单元,最终,基于目标分析原子对应的任务单元,生成目标分析引擎。本公开实施例中用户可以基于分析需求选择分析原子,然后基于选中的分析原子自动化的构建分析引擎,与现有技术中基于分析需求人工编写分析代码相比,本公开实施例能够提高分析引擎的构建效率。另外,分析原子在不同的分析引擎的构建中可复用,进一步的简化了分析引擎的构建过程。
[0107]
除了上述方法和装置以外,本公开实施例还提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备实现本公开实施例所述的分析引擎的生成方法。
[0108]
本公开实施例还提供了一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现本公开实施例所述的分析引擎的生成方法。
[0109]
另外,本公开实施例还提供了一种分析引擎的生成设备,参见图4所示,可以包括:
[0110]
处理器401、存储器402、输入装置403和输出装置404。分析引擎的生成设备中的处理器401的数量可以一个或多个,图4中以一个处理器为例。在本公开的一些实施例中,处理器401、存储器402、输入装置403和输出装置404可通过总线或其它方式连接,其中,图4中以通过总线连接为例。
[0111]
存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行分析引擎的生成设备的各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。输入装置403可用于接收输入的数字或字符信息,以及产生与分析引擎的生成设备的用户设置以及功能控制有关的信号输入。
[0112]
具体在本实施例中,处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中
的应用程序,从而实现上述分析引擎的生成设备的各种功能。
[0113]
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0114]
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1