基于图挖掘的接口分析方法、装置及相关设备与流程

文档序号:28802733发布日期:2022-02-09 00:34阅读:59来源:国知局
基于图挖掘的接口分析方法、装置及相关设备与流程

1.本发明涉及数据分析领域,尤其涉及一种基于图挖掘的接口分析方法、装置、计算机设备及存储介质。


背景技术:

2.现有公司对网站服务性能优化及错误排查中需要对接口进行分析,其中,接口是指软件系统不同组成部分衔接的约定。现有方式对接口进行分析主要是采用正则表达式。分析过程为先获取所有的网络地址,即url(uniform resource identifier,统一资源定位符),再采用正则表达式方案是对所有url中的接口使用正则表达式进行归一化处理,例如:url1:https://api.example.com/v1/users/1;url2:https://api.example.com/v1/users/2,归一化后得到的接口为https://api.example.com/v1/users,最后对得到的接口进行相应的分析,从而实现对网站服务性能优化及错误排查。
3.但上述方法需要人工参与,找出可归一化的接口,然后通过归一化的正则表达式来表示这个接口,导致人工依赖性强、性能差,且由于正则表达式是指将字符串的一个字符一个字符进行匹配,导致分析效率低。
4.因此,现有方式存在因采用正则表达式对接口进行分析而导致接口分析的效率低的问题。


技术实现要素:

5.本发明实施例提供一种基于图挖掘的接口分析方法、装置、计算机设备及存储介质,以提高对基于图挖掘的接口分析效率。
6.一种基于图挖掘的接口分析方法,包括:
7.获取统一资源定位符数据集合,其中,所述统一资源定位符数据集合包括至少一条统一资源定位符数据;
8.按照预设的选取方式,从所述统一资源定位符数据集合中选取出一条统一资源定位符数据作为待处理数据;
9.对所述待处理数据进行链接分隔符识别,得到链接分隔符;
10.采用所述链接分割符,对所述待处理符数据进行分割处理,将所述链接分割符之前的数据作为接口数据,并从所述统一资源定位符数据集合中移除所述待处理数据;
11.将所述接口数据加入接口集合中,并返回所述按照预设的选取方式,从所述统一资源定位符数据集合中选取出一条统一资源定位符数据作为待处理数据的步骤继续执行,直到所有所述统一资源定位符数据选取完毕;
12.基于树模型,对所述接口集合中所有接口数据进行分析,得到接口树模型;
13.根据所述接口树模型,对应用接口进行分析,得到分析结果。
14.一种基于图挖掘的接口分析装置,包括:
15.数据获取模块,用于获取统一资源定位符数据集合,其中,所述统一资源定位符数
据集合包括至少一条统一资源定位符数据;
16.待处理数据选取模块,用于按照预设的选取方式,从所述统一资源定位符数据集合中选取出一条统一资源定位符数据作为待处理数据;
17.链接分割符获取模块,用于对所述待处理数据进行链接分隔符识别,得到链接分隔符;
18.分割模块,用于采用所述链接分割符,对所述待处理符数据进行分割处理,将所述链接分割符之前的数据作为接口数据,并从所述统一资源定位符数据集合中移除所述待处理数据;
19.第一循环模块,用于将所述接口数据加入接口集合中,并返回所述按照预设的选取方式,从所述统一资源定位符数据集合中选取出一条统一资源定位符数据作为待处理数据的步骤继续执行,直到所有所述统一资源定位符数据选取完毕;
20.接口树模型构建模块,用于基于树模型,对所述接口集合中所有接口数据进行分析,得到接口树模型;
21.分析模块,用于根据所述接口树模型,对应用接口进行分析,得到分析结果。
22.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于图挖掘的接口分析方法的步骤。
23.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述基于图挖掘的接口分析方法的步骤。
24.本发明实施例提供的基于图挖掘的接口分析方法、装置、计算机设备及存储介质,获取统一资源定位符数据集合,其中,统一资源定位符数据集合包括至少一条统一资源定位符数据;按照预设的选取方式,从统一资源定位符数据集合中选取出一条统一资源定位符数据作为待处理数据;对待处理数据进行链接分隔符识别,得到链接分隔符;采用链接分割符,对待处理符数据进行分割处理,将链接分割符之前的数据作为接口数据,并从统一资源定位符数据集合中移除待处理数据;将接口数据加入接口集合中,并返回按照预设的选取方式,从统一资源定位符数据集合中选取出一条统一资源定位符数据作为待处理数据的步骤继续执行,直到所有统一资源定位符数据选取完毕;基于树模型,对接口集合中所有接口数据进行分析,得到接口树模型;根据接口树模型,对应用接口进行分析,得到分析结果。通过对统一资源定位符数据集合中的统一资源定位符数据进行一系列处理,并构建接口树模型,能有效提高遍历统一资源定位符数据的能力,基于接口树模型,能快速对接口数据进行快速分析,从而得到分析结果,以提高对基于图挖掘的接口分析效率。
附图说明
25.为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
26.图1是本发明一实施例中基于图挖掘的接口分析方法的一应用环境示意图;
27.图2是本发明一实施例中基于图挖掘的接口分析方法的一流程图;
28.图3是本发明一实施例中初始树模型的一示意图;
29.图4是本发明一实施例中基于图挖掘的接口分析装置的结构示意图;
30.图5是本发明一实施例中计算机设备的一示意图。
具体实施方式
31.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
32.本技术提供的基于图挖掘的接口分析方法,可应用在如图1的应用环境中,其中,计算机设备通过网络与服务器进行通信。其中,计算机设备可以但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
33.在一实施例中,如图2所示,提供一种基于图挖掘的接口分析方法,以该方法应用在图1中的服务器为例进行说明,包括如下步骤s101至步骤s107:
34.s101、获取统一资源定位符数据集合,其中,统一资源定位符数据集合包括至少一条统一资源定位符数据。
35.在步骤s101中,上述统一资源定位符数据集合是指用于存放统一资源定位符数据的集合。上述统一资源定位符数据是指与应用接口进行连通的网页对应的网络地址。
36.上述获取统一资源定位符数据集合的方法包括但不限于日志获取、数据挖掘。其中,日志获取是指从日志服务器上采集网页日志从而获取统一资源定位符数据集合的方法。数据挖掘是指利用程序对网页对应的网络地址进行获取并汇集到统一资源定位符数据集合的方法。
37.优选地,此处采用的是通过日志获取统一资源定位符数据集合。
38.通过获取统一资源定位符数据集合,能针对统一资源定位符数据集合中的所有统一资源定位符数据进行分析,从而对应用接口的使用情况进行分析,从而提高了对基于图挖掘的接口分析效率。
39.s102、按照预设的选取方式,从统一资源定位符数据集合中选取出一条统一资源定位符数据作为待处理数据。
40.在步骤s102中,上述预设的选取方式包括但不限于随机选取、按照从头到尾的顺序选取、按照从尾到头的顺序选取。
41.优选地,此处采用从头到尾的顺序选取。
42.应理解,此处从统一资源定位符数据集合中选取出一条统一资源定位符数据作为待处理数据可根据实际应用场景进行设置,例如,在计算资源充足的情况下,可并行选取多条统一资源定位符数据进行处理。
43.通过上述选取方式,能选取出统一资源定位符数据,有利于后续对统一资源定位符数据进行一系列处理,以便于后续对基于图挖掘的接口分析。
44.s103、对待处理数据进行链接分隔符识别,得到链接分隔符。
45.在步骤s103中,上述链接分割符是指用于区分一个统一资源定位符数据中的接口
数据以及应用接口对应的内容数据的字符。
46.具体地,该链接分隔符为统一资源定位符数据中的“?”。
47.下面以一具体实施例对链接分隔符、接口数据以及应用接口对应的内容数据进行说明,如“http://www.yazx.com/s?ie=utf-8&f=8&rsv_bp=1”为一个统一资源定位符数据,在该统一资源定位符数据中,此处的“?”即是链接分割符,在链接分隔符“?”之前的数据“http://www.yazx.com/s”则为接口数据,在链接分隔符“?”之后的数据“ie=utf-8&f=8&rsv_bp=1”为应用接口对应的内容数据。
48.应理解,在链接分割符之后的应用接口对应的内容数据包括但不限于该应用接口不需要调用、清除缓存。
49.通过获取链接分割符,能从统一资源定位符数据获取到接口数据,便于后续对接口数据进行分析,减少了人工干预,可实现自动化对应用接口进行接口分析,从而提高了对应有接口进行接口分析的自动化能力。
50.s104、采用链接分割符,对待处理符数据进行分割处理,将链接分割符之前的数据作为接口数据,并从统一资源定位符数据集合中移除待处理数据。
51.在步骤s104中,上述分割处理是指基于链接分割符将接口数据和应用接口对应的内容数据进行分割的处理步骤。
52.通过上述分割处理,从统一资源定位符数据获取到接口数据,便于后续对接口数据进行分析,减少了人工干预,可实现自动化对应用接口进行接口分析,从而提高了对应有接口进行接口分析的自动化能力。
53.s105、将接口数据加入接口集合中,并返回按照预设的选取方式,从统一资源定位符数据集合中选取出一条统一资源定位符数据作为待处理数据的步骤继续执行,直到所有统一资源定位符数据选取完毕。
54.在步骤s105中,上述接口集合是指用于存放提取到的接口数据的使用情况的结合。
55.通过将接口数据加入到接口集合中,有利于对统一资源定位符数据集合中的全部统一资源定位符数据进行统一处理,以提高数据处理效率。
56.s106、基于树模型,对接口集合中所有接口数据进行分析,得到接口树模型。
57.在步骤s106中,上述树模型的表现形式包括但不限于决策树模型、二叉树模型、随机森林树模型。上述树模型属于一种图挖掘方式,用来挖掘接口数据对应的图形,以便于后续进行分析。
58.优选地,此处采用决策树模型。
59.上述分析是指字符匹配分析,此处需要说明的是,该分析是指对一个接口数据中的字符进行分割,并将不同接口数据相同位置的字符进行匹配分析,根据分析结果得到接口树模型的过程。
60.下面以一具体实施例说明上述分析过程,存在两个接口数据“http://www.yazx.com/a/id/1245”和“http://www.yazx.com/a/id/1975”,将接口数据分别分割为“http://www.yazx.com”、“a”、“id”、“1245”和“http://www.yazx.com”、“a”、“id”、“1975”。对比两个接口数据的第一个位置均为“http://www.yazx.com”,则将该“http://www.yazx.com”作为接口树模型的第一层的一个节点;对比两个接口数据的第二个位置均
为“a”,则将“a”作为接口树模型的第二层的一个节点;对比两个接口数据的第三个位置均为“id”,则将“id”作为接口树模型的第三层的一个节点,对比两个接口数据的第四个位置分部为“1245”和“1975”,则将“1245”和“1975”作为接口树模型的第四层的两个节点。
61.通过对接口数据中的字符进行匹配分析,从而得到接口树模型,有利于对应用接口快速进行分析,从而提高了对基于图挖掘的接口分析效率。
62.s107、根据接口树模型,对应用接口进行分析,得到分析结果。
63.在步骤s107中,上述分析包括但不限于使用次数分析、异常分析。其中,使用次数分析是指针对接口数据集合中的应用接口,在接口树模型的叶子节点中出现的次数。上述异常分析是对应用接口出现的频率是否存在异常进行分析。
64.通过接口树模型,能根据不同需求,对应用接口进行对应的分析,并得到分析结果,提高了对基于图挖掘的接口分析的健壮性、提高了接口分析的整体性能。
65.本发明实施例提供的基于图挖掘的接口分析方法,通过获取统一资源定位符数据集合,按照预设的选取方式,从统一资源定位符数据集合中选取出一条统一资源定位符数据作为待处理数据。对待处理数据进行链接分隔符识别,得到链接分隔符。采用链接分割符,对待处理符数据进行分割处理,将链接分割符之前的数据作为接口数据,并从统一资源定位符数据集合中移除待处理数据。将接口数据加入接口集合中,并返回按照预设的选取方式,从统一资源定位符数据集合中选取出一条统一资源定位符数据作为待处理数据的步骤继续执行,直到所有统一资源定位符数据选取完毕。基于树模型,对接口集合中所有接口数据进行分析,得到接口树模型。根据接口树模型,对接口进行分析,得到分析结果。通过对统一资源定位符数据集合中的统一资源定位符数据进行一系列处理,并构建接口树模型,能有效提高遍历统一资源定位符数据的能力,基于接口树模型,能快速对接口数据进行快速分析,从而得到分析结果,以提高对基于图挖掘的接口分析效率。
66.在本实施例的一些可选的实现方式中,在步骤s101之前,基于图挖掘的接口分析方法进一步包括如下步骤a至步骤f:
67.a、获取网站日志数据。
68.b、基于预设的预处理方式,对所有网络日志数据进行数据预处理,并将通过预处理的网络日志数据加入到网络日志数据集合中。
69.c、按照预设的选取顺序,从网站日志数据集合中选取出一条网站日志数据作为目标网站日志数据。
70.d、基于预设的切分方式,对目标网站日志数据进行切分,得到切分数据集合,其中,切分数据集合中包括至少一条切分数据。
71.e、基于切分数据集合,确认目标网络日志数据对应的统一资源定位符数据。
72.f、将统一资源定位符数据加入统一资源定位符数据集合,并返回按照预设的选取顺序,从网站日志数据集合中选取出一条网站日志数据作为目标网站日志数据的步骤继续执行,直到所有网络日志数据选取完毕。
73.在步骤a中,上述网络日志数据是指从日志服务器中获取到的网络日志数据。上述网络日志数据中包括但不限于访问者ip、访问日期、请求方式、请求的网络地址。
74.在步骤b中,上述预设的预处理方式是指根据现实需要进行预处理方式叠加使用的方法。上述预处理包括但不限于数据清洗、缺失值处理、异常值识别。
75.优选地,此处采用的是异常值识别。
76.具体地,上述异常值识别的过程为:
77.对所有网络日志数据进行异常识别,得到每一条网络日志数据对应的识别结果;
78.当识别结果为异常,则将识别结果对应的网络日志数据删除;
79.当识别结果为正常,则将识别结果对应的网络日志数据加入到网络日志数据集合中。
80.在步骤d中,上述预设的切分方式是指获取目标网络日志数据每一个字段中的分隔符,并基于该分隔符将目标网络日志数据进行切分,获取到该目标网络日志数据对应的所有字段,并将所有字段作为切分数据加入切分数据集合中。
81.在步骤e中,上述统一资源定位符数据是指包括接口数据的数据。
82.通过切分数据集合中的字段顺序可快速确定统一资源定位符数据。
83.下面以一具体实施例对上述步骤a至e进行解释。例如:
84.在步骤a中,网络日志数据1为:"35.26.36.54""[02/sep/2021:11:29:14+0000]""get""http/1.1""200""http://www.yazx.com/s?ie=utf-8&f=8&rsv_bp=1""mozilla/5.0(macintosh;intel mac os x 10_15_7)applewebkit/537.36(khtml,like gecko)chrome/92.0.4515.159safari/537.36"。
[0085]
其中,“35.26.36.54”为访问者ip;“[02/sep/2021:11:29:14+0000]”为访问日期;“get”为请求方式;“http/1.1”为http协议;“200”为返回转态码;“http://www.yazx.com/s?ie=utf-8&f=8&rsv_bp=1”为请求的网络地址;“mozilla/5.0(macintosh;intel mac os x 10_15_7)applewebkit/537.36(khtml,like gecko)chrome/92.0.4515.159safari/537.36”为访问者的浏览器信息。
[0086]
网络日志数据2为“(110:connection timed out)while connecting to upstream”。
[0087]
对于步骤b而言,网络日志数据1中不存在异常日志:“(110:connection timed out)while connecting to upstream”,则对网络日志数据1进行异常识别时,对应的识别结果为为正常,则将网络日志数据1加入到网络日志数据集合中。网络日志数据2为“(110:connection timed out)while connecting to upstream”,则对网络日志数据2进行异常识别时,对应的异常结果为异常,则将网络日志数据2进行删除,后续不对网络日志数据2进行分析。
[0088]
对于步骤d而言,网络日志数据1作为目标网络日志数据时,分隔符为
“”
(两个空格),基于识别出来的
“”
将网络日志数据1分隔成“35.26.36.54”、“[02/sep/2021:11:29:14+0000]”、“get”、“http/1.1”、“200”、“http://www.yazx.com/s?ie=utf-8&f=8&rsv_bp=1”、“mozilla/5.0(macintosh;intel mac os x 10_15_7)applewebkit/537.36(khtml,like gecko)chrome/92.0.4515.159safari/537.36”这7个字段。
[0089]
将上述字段加入切分数据集合l1中,得到l1={35.26.36.54”,“[02/sep/2021:11:29:14+0000]”,“get”,“http/1.1”,“200”,“http://www.yazx.com/s?ie=utf-8&f=8&rsv_bp=1”,“mozilla/5.0(macintosh;intel mac os x 10_15_7)applewebkit/537.36(khtml,like gecko)chrome/92.0.4515.159safari/537.36”}。
[0090]
对于步骤e而言,在切分数据集合l1中,根据字段顺序【访问者ip,访问日期,请求
方式,http协议,返回转态码,请求的网络地址,访问者的浏览器信息】,选取第5个字段“请求的网络地址”对应的内容“http://www.yazx.com/s?ie=utf-8&f=8&rsv_bp=1”作为统一资源定位符数据。
[0091]
通过上述步骤,能快速获取统一资源定位符数据集合,以便于针对统一资源定位符数据集合中的所有统一资源定位符数据进行分析,从而对应用接口的使用情况进行分析,从而提高了对基于图挖掘的接口分析效率。
[0092]
在本实施例的一些可选的实现方式中,步骤s106进一步包括如下步骤s601至步骤s608:
[0093]
s601、从接口集合中选取出一条接口数据作为初始接口数据;
[0094]
s602、基于预设的节点识别方式,对初始接口数据进行节点识别,得到初始接口数据对应的所有初始节点;
[0095]
s603、基于树模型和所有初始节点,得到初始树模型。
[0096]
s604、按照预设的选取顺序,从接口集合中选取出一条接口数据作为待识别数据。
[0097]
s605、对待识别数据进行节点识别,得到待识别数据对应的所有待识别节点。
[0098]
s606、将待识别节点加入初始树模型中,得到中间树模型。
[0099]
s607、将中间树模型作为初始树模型,并返回按照预设的选取顺序,从接口集合中选取出一条接口数据作为待识别数据的步骤继续执行,直到所有接口数据选取完毕。
[0100]
s608、对初始树模型进行归一化处理,得到接口树模型。
[0101]
在步骤s602中,上述预设的节点识别方式是指从接口数据中识别出节点的方法。
[0102]
优选地,此处采用识别分隔符的方法识别结果。
[0103]
应理解,在每个接口数据中,“/”是固定存在的符号,可将“/”作为分隔符对接口数据进行节点识别。例如,当接口数据为“http://www.yazx.com/a/id/1245”时,对该接口数据进行“/”分隔符的识别,得到“http://www.yazx.com”、“a”、“id”、“1245”[0104]
在步骤s603中,其具体是,基于识别出来的所有节点,将每一个节点作为树模型每一层对应的节点,构建出初始树模型。
[0105]
例如,如图3所示,当识别出来的所有初始节点为“http://www.yazx.com”、“a”、“id”、“1245”,则将“http://www.yazx.com”作为初始树模型的第一层节点,“a”作为初始树模型的第二层节点,“id”作为初始树模型的第三层节点,“1245”作为初始树模型的第四层节点。
[0106]
在步骤s606中,上述中间树模型是指将待识别节点加入初始树模型得到的中间模型。上述加入是通过对比相同位置对应的节点内容,当节点内容一致时,则共用同一个节点,当节点内容不一致时,则重新生成一个节点。
[0107]
例如,以图3所示的初始树模型为基础,当待识别节点为“http://www.yazx.com”、“a”、“id”、“1975”时,对比两个接口数据的第一个位置均为“http://www.yazx.com”,则将该“http://www.yazx.com”作为中间树模型的第一层的一个节点;对比两个接口数据的第二个位置均为“a”,则将“a”作为中间树模型的第二层的一个节点;对比两个接口数据的第三个位置均为“id”,则将“id”作为中间树模型的第三层的一个节点,对比两个接口数据的第四个位置分部为“1245”和“1975”,则将“1245”和“1975”作为中间树模型的第四层的两个节点。
[0108]
在步骤s608中,上述归一化处理是指当初始树模型某个节点的子节点数量超过预设子节点阈值时,则将该节点和子节点进行合并,该字节点可用其他字符直接替代。
[0109]
例如,当id这个节点对应的子节点为“1245”、“1975”、“1435”、“1543”、“1341”、“1350”这6个子节点时,而预设子节点阈值为5时,则需要将id的子节点与id这个节点进行合并,可将id的子节点替代为“*”,则该节点可用“id/*”来替代“id/1245”、“id/1975”、“id/1435”、“id/1543”、“id/1341”、“id/1350”这两个节点。
[0110]
通过对接口数据中的字符进行匹配分析,快速构建接口树模型,有利于对应用接口快速进行分析,从而提高了对基于图挖掘的接口分析效率。
[0111]
在本实施例的一些可选的实现方式中,步骤s107进一步包括如下步骤s701至步骤s704:
[0112]
s701、对接口树模型进行遍历处理,得到每一个叶节点对应的访问次数。
[0113]
s702、对所有的访问次数进行累加处理,得到访问总次数。
[0114]
s703、基于访问总次数和每一个叶节点对应的访问次数,对每一个叶节点进行比例计算,得到每一个叶节点对应的访问占比。
[0115]
s704、根据每一个叶节点对应的访问占比,对叶节点对应的应用接口进行分析,得到分析结果。
[0116]
在步骤s701中,上述访问次数是指每个叶节点对应的接口数据出现的次数。
[0117]
应理解,每个叶节点记录相应的访问次数做为自身的权值。当某个节点存在使用通配符“*”合并其子节点时,所有子节点的权值为最后得到的该节点的权值的组成部分。
[0118]
在步骤s702中,上述访问总次数与接口集合中的接口数据数量相同。
[0119]
在步骤s704中,其具体是:
[0120]
当访问占比高于预设最高访问值时,则认为该叶节点对应的应用接口需要进行优化处理;
[0121]
当访问占比低于预设最低访问值时,则认为该叶节点对应的应用接口访问值偏低,需要进行错误排查处理。
[0122]
当访问占比处于预设最低访问值和预设最高访问值中,则认为该叶节点对应应用接口访问正常。
[0123]
通过对接口树模型进行遍历处理,能根据不同需求,对应用接口进行对应的分析,并得到分析结果,提高了对基于图挖掘的接口分析的健壮性、提高了接口分析的整体性能。
[0124]
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
[0125]
在一实施例中,提供一种基于图挖掘的接口分析装置,该基于图挖掘的接口分析装置与上述实施例中基于图挖掘的接口分析方法一一对应。如图3所示,该基于图挖掘的接口分析装置包括数据获取模块11、待处理数据选取模块12、链接分割符获取模块13、分割模块14、第一循环模块15、接口树模型构建模块16和分析模块17。各功能模块详细说明如下:
[0126]
数据获取模块11,用于获取统一资源定位符数据集合,其中,统一资源定位符数据集合包括至少一条统一资源定位符数据。
[0127]
待处理数据选取模块12,用于按照预设的选取方式,从统一资源定位符数据集合
中选取出一条统一资源定位符数据作为待处理数据。
[0128]
链接分割符获取模块13,用于对待处理数据进行链接分隔符识别,得到链接分隔符。
[0129]
分割模块14,用于采用链接分割符,对待处理符数据进行分割处理,将链接分割符之前的数据作为接口数据,并从统一资源定位符数据集合中移除待处理数据。
[0130]
第一循环模块15,用于将接口数据加入接口集合中,并返回按照预设的选取方式,从统一资源定位符数据集合中选取出一条统一资源定位符数据作为待处理数据的步骤继续执行,直到所有统一资源定位符数据选取完毕。
[0131]
接口树模型构建模块16,用于基于树模型,对接口集合中所有接口数据进行分析,得到接口树模型。
[0132]
分析模块17,用于根据接口树模型,对应用接口进行分析,得到分析结果。
[0133]
在该实施例中,在数据获取模块11之前,基于图挖掘的接口分析装置还包括如下模块:
[0134]
网络日志数据获取模块,用于获取至少一条网站日志数据。
[0135]
预处理模块,用于基于预设的预处理方式,对所有网络日志数据进行数据预处理,并将通过预处理的网络日志数据加入到网络日志数据集合中。
[0136]
网络日志数据选取模块,用于按照预设的选取顺序,从网站日志数据集合中选取出一条网站日志数据作为目标网站日志数据。
[0137]
切分模块,用于基于预设的切分方式,对目标网站日志数据进行切分,得到切分数据集合,其中,切分数据集合中包括至少一条切分数据。
[0138]
统一资源定位符数据确认模块,用于基于切分数据集合,确认目标网络日志数据对应的统一资源定位符数据。
[0139]
第二循环模块,用于将统一资源定位符数据加入统一资源定位符数据集合,并返回按照预设的选取顺序,从网站日志数据集合中选取出一条网站日志数据作为目标网站日志数据的步骤继续执行,直到所有网络日志数据选取完毕。
[0140]
在该实施例中,预处理模块进一步包括:
[0141]
异常识别单元,用于对所有网络日志数据进行异常识别,得到每一条网络日志数据对应的识别结果。
[0142]
第一识别单元,用于当识别结果为异常,则将识别结果对应的网络日志数据删除。
[0143]
第二识别单元,用于当识别结果为正常,则将识别结果对应的网络日志数据加入到网络日志数据集合中。
[0144]
在该实施例中,接口树模型构建模块16进一步包括:
[0145]
第一接口数据选取单元,用于从接口集合中选取出一条接口数据作为初始接口数据。
[0146]
第一节点识别单元,用于基于预设的节点识别方式,对初始接口数据进行节点识别,得到初始接口数据对应的所有初始节点。
[0147]
初始树模型获取单元,用于基于树模型和所有初始节点,得到初始树模型。
[0148]
第二接口数据选取单元,用于按照预设的选取顺序,从接口集合中选取出一条接口数据作为待识别数据。
[0149]
第二节点识别单元,用于对待识别数据进行节点识别,得到待识别数据对应的所有待识别节点。
[0150]
中间树模型获取单元,用于将待识别节点加入初始树模型中,得到中间树模型。
[0151]
循环单元,用于将中间树模型作为初始树模型,并返回按照预设的选取顺序,从接口集合中选取出一条接口数据作为待识别数据的步骤继续执行,直到所有接口数据选取完毕。
[0152]
归一化单元,用于对初始树模型进行归一化处理,得到接口树模型。
[0153]
在该实施例中,分析模块17进一步包括:
[0154]
访问次数获取单元,用于对接口树模型进行遍历处理,得到每一个叶节点对应的访问次数。
[0155]
访问总次数获取单元,用于对所有的访问次数进行累加处理,得到访问总次数。
[0156]
访问占比获取单元,用于基于访问总次数和每一个叶节点对应的访问次数,对每一个叶节点进行比例计算,得到每一个叶节点对应的访问占比。
[0157]
分析单元,用于根据每一个叶节点对应的访问占比,对叶节点对应的应用接口进行分析,得到分析结果。
[0158]
其中上述模块/单元中的“第一”和“第二”的意义仅在于将不同的模块/单元加以区分,并不用于限定哪个模块/单元的优先级更高或者其它的限定意义。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块,本技术中所出现的模块的划分,仅仅是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式。
[0159]
关于基于图挖掘的接口分析装置的具体限定可以参见上文中对于基于图挖掘的接口分析方法的限定,在此不再赘述。上述基于图挖掘的接口分析装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0160]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储基于图挖掘的接口分析方法中涉及到的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于图挖掘的接口分析方法。
[0161]
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例中基于图挖掘的接口分析方法的步骤,例如图2所示的步骤s101至步骤s107及该方法的其它扩展和相关步骤的延伸。或者,处理器执行计算机程序时实现上述实施例中基于图挖掘的接口分析装置的各模块/单元的功能,例如图3所示模块11至模块17的功能。为避免重复,这里不再赘
述。
[0162]
所述处理器可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述计算机装置的控制中心,利用各种接口和线路连接整个计算机装置的各个部分。
[0163]
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述计算机装置的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、视频数据等)等。
[0164]
所述存储器可以集成在所述处理器中,也可以与所述处理器分开设置。
[0165]
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例中基于图挖掘的接口分析方法的步骤,例如图2所示的步骤s101至步骤s107及该方法的其它扩展和相关步骤的延伸。或者,计算机程序被处理器执行时实现上述实施例中基于图挖掘的接口分析装置的各模块/单元的功能,例如图3所示模块11至模块17的功能。为避免重复,这里不再赘述。
[0166]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
[0167]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
[0168]
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1