一种接口监控方法及装置与流程

文档序号:22621729发布日期:2020-10-23 19:27阅读:151来源:国知局
一种接口监控方法及装置与流程

本发明涉及数据处理技术领域,具体涉及一种接口监控方法及装置。



背景技术:

接口是用户接入并访问后台应用的一种重要方式,接口的稳定性和可用性会影响到整个后台应用的业务运转,因此需要对接口进行监控。

目前对接口进行监控的方式通常为:对接口的流量和响应时间等数据进行监控。但是由于每天不同时间点用户访问接口的差别较大,无法准确设置报警阈值,只有当流量和响应时间等数据发生大幅度变化时才能从报警中获知接口异常,即现有监控接口的方式不能准确和及时检测到接口异常。



技术实现要素:

有鉴于此,本发明实施例提供一种接口监控方法及装置,以解决现有监控接口的方式不能准确和及时检测到接口异常的问题。

为实现上述目的,本发明实施例提供如下技术方案:

本发明实施例第一方面公开一种接口监控方法,所述方法包括:

获取当前时间每个服务节点对应的流量数据;

确定与所述当前时间对应的预设的流量基线,所述流量基线为根据每个所述服务节点对应的历史流量数据确定;

结合所述流量基线和每个所述服务节点对应的流量数据,确定接口是否出现异常;

若所述接口出现异常,发送用于指示所述接口出现异常的报警信息。

优选的,所述历史流量数据包括历史请求流量和历史回应流量,确定所述流量基线的过程包括:

获取每个所述服务节点在前n周每分钟对应的历史请求流量和历史回应流量,n为正整数;

利用前n周中每周第m天第h小时第l分钟对应的每个所述服务节点的所述历史请求流量,确定一周中第m天第h小时第l分钟对应的请求流量基线,m为大于等于1小于等于7的整数,h为大于等于1小于等于24的整数,l为大于等于1小于等于60的整数;

根据前n周中每周第m天第h小时第l分钟对应的每个所述服务节点的所述历史回应流量,确定一周中第m天第h小时第l分钟对应的回应流量基线;

通过前n周中每周第m天第h小时第l分钟对应的每个所述服务节点的所述历史请求流量和所述历史回应流量之差,确定一周中第m天第h小时第l分钟对应的请求回应流量之差基线;

计算前n周中每周第m天第h小时第l分钟对应的每个所述服务节点的所述历史请求流量之和,得到前n周中每周第m天第h小时第l分钟对应的总历史请求流量;

利用前n周中每周对应的所述总历史请求流量,确定一周中第m天第h小时第l分钟对应的总请求流量基线;

计算前n周中每周第m天第h小时第l分钟对应的每个所述服务节点的所述历史回应流量之和,得到前n周中每周第m天第h小时第l分钟对应的总历史回应流量;

根据前n周中每周对应的所述总历史回应流量,确定一周中第m天第h小时第l分钟对应的总回应流量基线;

利用前n周中每周对应的所述总历史请求流量和所述总历史回应流量之差,确定一周中第m天第h小时第l分钟对应的总请求回应流量之差基线。

优选的,所述流量数据包括请求流量和回应流量,所述结合所述流量基线和每个所述服务节点对应的流量数据,确定接口是否出现异常,包括:

计算每个所述服务节点对应的请求流量之和,得到总请求流量,以及计算每个所述服务节点的回应流量之和,得到总回应流量;

针对每一所述服务节点,若所述服务节点的请求流量不在所述请求流量基线的范围内,确定接口出现异常;

针对每一所述服务节点,若所述服务节点的回应流量不在所述回应流量基线的范围内,确定所述接口出现异常;

针对每一所述服务节点,若所述服务节点的请求流量和回应流量之差不在所述请求回应流量之差基线的范围内,确定所述接口出现异常;

若所述总请求流量不在所述总请求流量基线的范围内,确定所述接口出现异常;

若所述总回应流量不在所述总回应流量基线的范围内,确定所述接口出现异常;

若所述总请求流量和所述总回应流量之差不在所述总请求回应流量之差基线的范围内,确定所述接口出现异常。

优选的,所述方法还包括:

若所述接口未出现异常,将每个所述服务节点对应的流量数据添加至数据统计序列。

优选的,将每个所述服务节点对应的流量数据添加至数据统计序列之后,还包括:

利用所述数据统计序列中的流量数据,更新所述流量基线。

本发明实施例第二方面公开一种接口监控装置,所述装置包括:

采集组件,用于获取当前时间每个服务节点对应的流量数据;

集中分析组件,用于确定与所述当前时间对应的预设的流量基线,所述流量基线为根据每个所述服务节点对应的历史流量数据确定;

报警判断组件,用于结合所述流量基线和每个所述服务节点对应的流量数据,确定接口是否出现异常,若所述接口出现异常,发送用于指示所述接口出现异常的报警信息。

优选的,所述历史流量数据包括历史请求流量和历史回应流量,用于确定所述流量基线的所述集中分析组件包括:

获取模块,用于获取每个所述服务节点在前n周每分钟对应的历史请求流量和历史回应流量,n为正整数;

第一确定模块,用于利用前n周中每周第m天第h小时第l分钟对应的每个所述服务节点的所述历史请求流量,确定一周中第m天第h小时第l分钟对应的请求流量基线,m为大于等于1小于等于7的整数,h为大于等于1小于等于24的整数,l为大于等于1小于等于60的整数;

第二确定模块,用于根据前n周中每周第m天第h小时第l分钟对应的每个所述服务节点的所述历史回应流量,确定一周中第m天第h小时第l分钟对应的回应流量基线;

第三确定模块,用于通过前n周中每周第m天第h小时第l分钟对应的每个所述服务节点的所述历史请求流量和所述历史回应流量之差,确定一周中第m天第h小时第l分钟对应的请求回应流量之差基线;

第一计算模块,用于计算前n周中每周第m天第h小时第l分钟对应的每个所述服务节点的所述历史请求流量之和,得到前n周中每周第m天第h小时第l分钟对应的总历史请求流量;

第四确定模块,用于利用前n周中每周对应的所述总历史请求流量,确定一周中第m天第h小时第l分钟对应的总请求流量基线;

第二计算模块,用于计算前n周中每周第m天第h小时第l分钟对应的每个所述服务节点的所述历史回应流量之和,得到前n周中每周第m天第h小时第l分钟对应的总历史回应流量;

第五确定模块,用于根据前n周中每周对应的所述总历史回应流量,确定一周中第m天第h小时第l分钟对应的总回应流量基线;

第六确定模块,用于利用前n周中每周对应的所述总历史请求流量和所述总历史回应流量之差,确定一周中第m天第h小时第l分钟对应的总请求回应流量之差基线。

优选的,所述流量数据包括请求流量和回应流量,所述报警判断组件包括:

计算模块,用于计算每个所述服务节点对应的请求流量之和,得到总请求流量,以及计算每个所述服务节点的回应流量之和,得到总回应流量;

第一确定模块,用于针对每一所述服务节点,若所述服务节点的请求流量不在所述请求流量基线的范围内,确定接口出现异常;

第二确定模块,用于针对每一所述服务节点,若所述服务节点的回应流量不在所述回应流量基线的范围内,确定所述接口出现异常;

第三确定模块,用于针对每一所述服务节点,若所述服务节点的请求流量和回应流量之差不在所述请求回应流量之差基线的范围内,确定所述接口出现异常;

第四确定模块,用于若所述总请求流量不在所述总请求流量基线的范围内,确定所述接口出现异常;

第五确定模块,用于若所述总回应流量不在所述总回应流量基线的范围内,确定所述接口出现异常;

第六确定模块,用于若所述总请求流量和所述总回应流量之差不在所述总请求回应流量之差基线的范围内,确定所述接口出现异常。

优选的,所述装置还包括:

添加组件,用于若所述接口未出现异常,将每个所述服务节点对应的流量数据添加至数据统计序列。

优选的,所述装置还包括:

更新组件,用于利用所述数据统计序列中的流量数据,更新所述流量基线。

基于上述本发明实施例提供的一种接口监控方法及装置,该方法为:获取当前时间每个服务节点对应的流量数据;确定与当前时间对应的预设的流量基线;结合流量基线和每个服务节点对应的流量数据,确定接口是否出现异常;若接口出现异常,发送用于指示接口出现异常的报警信息。本方案中,通过比对当前时间对应的流量基线和当前时间采集得到的每个服务节点的流量数据,确定接口是否出现异常,预先设置不同时间点对应的流量基线,利用一天中不同时间点对应的流量数据和流量基线对接口进行监控,提高监控接口异常的准确性和及时性。

附图说明

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

图1为本发明实施例提供的一种接口监控方法的流程图;

图2为本发明实施例提供的确定流量基线的流程图;

图3为本发明实施例提供的一种接口监控方法的另一流程图;

图4为本发明实施例提供的一种接口监控装置的结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

由背景技术可知,目前采用对接口的流量和响应时间等数据进行监控的方式监控接口,但是由于每天不同时间点用户访问接口的差别较大,无法准确设置报警阈值,只有当流量和响应时间等数据发生大幅度变化时才能从报警中获知接口异常,导致不能准确和及时检测到接口异常。

因此,本发明实施例提供一种接口监控方法及装置,预先设置不同时间点对应的流量基线,利用一天中不同时间点对应的流量数据和流量基线对接口进行监控,以提高监控接口异常的准确性和及时性。

参见图1,示出了本发明实施例提供的一种接口监控方法的流程图,该接口监控方法包括:

步骤s101:获取当前时间每个服务节点对应的流量数据。

需要说明的是,接口对应服务节点集群,该服务节点集群中包括多个服务节点,通过采集探针采集各个服务节点的流量数据,可以理解的是,一个服务节点对应一个采集探针。

流量数据包括请求流量(接口收到请求的流量)和回应流量(接口回应请求的流量)。

在具体实现步骤s101的过程中,通过各个服务节点对应的采集探针,获取当前时间(周几的几时几分)每个服务节点对应的流量数据,比如采集当前周的周三的21时50分每个服务节点对应的流量数据。

步骤s102:确定与当前时间对应的预设的流量基线。

需要说明的是,根据预先采集的每个服务节点对应的历史流量数据确定流量基线,比如预先采集每个服务节点在前n周每分钟对应的历史请求流量和历史回应流量,即历史流量数据包括历史请求流量和历史回应流量,利用前n周每分钟对应的历史请求流量和历史回应流量确定流量基线,n为正整数。

需要说明的是,在采集每个服务节点对应的历史流量数据时,记录相应的采集时间(第几周的周几的几时几分)。

可以理解的是,在设置流量基线的时候,一周中第m天第h小时第l分钟都存在各自对应的流量基线,m为大于等于1小于等于7的整数,h为大于等于1小于等于24的整数,l为大于等于1小于等于60的整数。

在具体实现步骤s102的过程中,确定与当前时间同一天(一周中的同一天)同一小时(一周中的同一天中的同一小时)同一分钟(一周中的同一天中的同一小时中的同一分钟)对应的流量基线,比如:若采集当前周的周三的21时50分(当前时间)每个服务节点对应的流量数据,则确定周三的21时50分对应的流量基线。

需要说明的是,流量基线包括:请求流量基线(也称单服务节点请求流量基线)、回应流量基线(也称单服务节点回应流量基线)、请求回应流量之差基线(也称单服务节点请求回应流量之差基线)、总请求流量基线、总回应流量基线和总请求回应流量之差基线。

进一步需要说明的是,上述提及的流量基线为数据范围,即流量基线包括对应的流量范围,比如:请求流量基线包括对应的请求流量范围(请求流量上限和请求流量下限),回应流量基线包括对应的回应流量范围,其余流量基线的示例就不一一举例说明。

步骤s103:结合流量基线和每个服务节点对应的流量数据,确定接口是否出现异常。若接口出现异常,执行步骤s104,若接口未出现异常,执行步骤s105。

在具体实现步骤s103的过程中,计算每个服务节点对应的请求流量之和(当前时间的请求流量之和),得到总请求流量,以及计算每个服务节点的回应流量之和(当前时间的回应流量之和),得到总回应流量。

针对每一服务节点,比较服务节点的请求流量和请求流量基线(当前时间对应的请求流量基线),若该服务节点的请求流量不在请求流量基线的范围(请求流量范围)内,即若该服务节点的请求流量不在请求流量上限至请求流量下限的范围内,确定接口出现异常。

针对每一服务节点,比较服务节点的回应流量和回应流量基线,若该服务节点的回应流量不在回应流量基线的范围内,确定接口出现异常。

针对每一服务节点,比如服务节点的请求流量和回应流量之差与请求回应流量之差基线,若服务节点的请求流量和回应流量之差不在请求回应流量之差基线的范围内,确定接口出现异常。

比较总请求流量和总请求流量基线,若总请求流量不在总请求流量基线的范围内,确定接口出现异常。

比较总回应流量和总回应流量基线,若总回应流量不在总回应流量基线的范围内,确定接口出现异常。

比较总请求流量和总回应流量之差与总请求回应流量之差基线,若总请求流量和总回应流量之差不在总请求回应流量之差基线的范围内,确定接口出现异常。

步骤s104:发送用于指示接口出现异常的报警信息。

在具体实现步骤s104的过程中,当确定接口出现异常时,发送用于指示接口出现异常的报警信息,提示技术人员,发送报警信息的方式包括但不仅限于:向指定邮箱发送包含报警信息的邮件,向指定号码发送包含报警信息的短信提示,通过弹窗的形式在指定设备上显示报警信息。

可以理解的是,上述关于发送报警信息的方式仅用于举例说明,对于发送报警信息的具体方式不做限定。

步骤s105:将每个服务节点对应的流量数据添加至数据统计序列。

在具体实现步骤s105的过程中,若接口未出现异常,即每股服务节点对应的流量数据(当前时间采集得到的流量数据)不存在异常,将之前采集得到的最早的历史流量数据(之前用于确定流量基线的历史流量数据)删除,将当前采集得到的流量数据添加至数据统计序列。

优选的,可以理解的是,为保证所确定的流量基线更贴合实际情况,需要对流量基线进行更新,利用数据统计序列中的流量数据,更新流量基线,比如利用数据统计序列中的流量数据确定下一周(仅举例)需要用到的流量基线(更新后的流量基线),并利用更新后的流量基线结合下一周采集得到的每个服务节点的流量数据,监控下一周接口的异常情况。

在本发明实施例中,预先设置不同时间点对应的流量基线,通过比对当前时间对应的流量基线和当前时间采集得到的每个服务节点的流量数据,确定接口是否出现异常,即利用一天中不同时间点对应的流量数据和流量基线对接口进行监控,提高监控接口异常的准确性和及时性。

上述本发明实施例图1步骤s102涉及的确定流量基线的过程,参见图2,示出了本发明实施例提供的确定流量基线的流程图,包括以下步骤:

步骤s201:获取每个服务节点在前n周每分钟对应的历史请求流量和历史回应流量。

在具体实现步骤s201的过程中,针对每一个服务节点,获取该服务节点在前n周每分钟对应的历史请求流量和历史回应流量,n为正整数。

可以理解的是,在获取服务节点在前n周每分钟对应的历史请求流量和历史回应流量时,记录获取历史请求流量和历史回应流量的时间(即采集历史请求流量和历史回应流量的时间),比如记录在第几周的周几的第几时第几分采集服务节点的历史请求流量和历史回应流量。

步骤s202:利用前n周中每周第m天第h小时第l分钟对应的每个服务节点的历史请求流量,确定一周中第m天第h小时第l分钟对应的请求流量基线。

m为大于等于1小于等于7的整数,h为大于等于1小于等于24的整数,l为大于等于1小于等于60的整数。

在具体实现步骤s203的过程中,利用前n周中每周第m天第h小时第l分钟对应的每个服务节点的历史请求流量,确定一周中第m天第h小时第l分钟对应的请求流量的波动范围,从而确定一周中第m天第h小时第l分钟对应的请求流量基线。

步骤s203:根据前n周中每周第m天第h小时第l分钟对应的每个服务节点的所述历史回应流量,确定一周中第m天第h小时第l分钟对应的回应流量基线。

在具体实现步骤s203的过程中,利用前n周中每周第m天第h小时第l分钟对应的每个服务节点的历史回应流量,确定一周中第m天第h小时第l分钟对应的回应流量的波动范围,从而确定一周中第m天第h小时第l分钟对应的回应流量基线。

步骤s204:通过前n周中每周第m天第h小时第l分钟对应的每个服务节点的历史请求流量和历史回应流量之差,确定一周中第m天第h小时第l分钟对应的请求回应流量之差基线。

在具体实现步骤s204的过程中,通过前n周中每周第m天第h小时第l分钟对应的每个服务节点的历史请求流量和历史回应流量之差,确定一周中第m天第h小时第l分钟对应的请求回应流量之差的波动范围,从而确定一周中第m天第h小时第l分钟对应的请求回应流量之差基线。

步骤s205:计算前n周中每周第m天第h小时第l分钟对应的每个服务节点的历史请求流量之和,得到前n周中每周第m天第h小时第l分钟对应的总历史请求流量。

在具体实现步骤s205的过程中,计算前n周中每周第m天第h小时第l分钟对应的每个服务节点的历史请求流量之和,即确定前n周的每周中同一天同一小时同一分钟所有服务节点的历史请求流量之和,从而得到前n周中每周第m天第h小时第l分钟对应的总历史请求流量。

步骤s206:利用前n周中每周对应的总历史请求流量,确定一周中第m天第h小时第l分钟对应的总请求流量基线。

在具体实现步骤s206的过程中,利用前n周中每周对应的总历史请求流量(每周第m天第h小时第l分钟对应的总历史请求流量),确定一周中第m天第h小时第l分钟对应的总请求流量的波动范围,从而确定一周中第m天第h小时第l分钟对应的总请求流量基线。

步骤s207:计算前n周中每周第m天第h小时第l分钟对应的每个服务节点的历史回应流量之和,得到前n周中每周第m天第h小时第l分钟对应的总历史回应流量。

在具体实现步骤s207的过程中,计算前n周中每周第m天第h小时第l分钟对应的每个服务节点的历史回应流量之和,即确定前n周的每周中同一天同一小时同一分钟所有服务节点的历史回应流量之和,从而得到前n周中每周第m天第h小时第l分钟对应的总历史回应流量。

步骤s208:根据前n周中每周对应的总历史回应流量,确定一周中第m天第h小时第l分钟对应的总回应流量基线。

在具体实现步骤s208的过程中,根据前n周中每周对应的总历史回应流量(每周第m天第h小时第l分钟对应的总历史回应流量),确定一周中第m天第h小时第l分钟对应的总回应流量的波动范围,从而确定一周中第m天第h小时第l分钟对应的总回应流量基线。

步骤s209:利用前n周中每周对应的总历史请求流量和总历史回应流量之差,确定一周中第m天第h小时第l分钟对应的总请求回应流量之差基线。

在具体实现步骤s209的过程中,利用前n周中每周对应的总历史请求流量(每周第m天第h小时第l分钟对应的总历史请求流量)和总历史回应流量(每周第m天第h小时第l分钟对应的总历史回应流量)之差,确定一周中第m天第h小时第l分钟对应的总请求回应流量之差的波动范围,从而确定一周中第m天第h小时第l分钟对应的总请求回应流量之差基线。

为更好解释说明上述本发明实施例图1和图2示出关于比较当前时间对应的流量数据和流量基线的内容,通过过程a1至a3,以及通过过程b1至b3进行举例说明,需要说明的是,过程a1至a3为比较当前时间对应的总请求流量和总请求流量基线的内容,过程b1至b3为比较当前时间对应的总请求流量和总回应流量之差与总请求回应流量之差基线的内容。

a1、采集并加和当前时间(以下以t表示)每个服务节点的请求流量,得到当前时间t对应的总请求流量(以下以d表示)。获取{t-w,-2w,t-3w,…,t-nw}这前n周中每周与当前时间t对应的时间的总历史请求流量,前n周中每周与当前时间t对应的总历史请求流量记为{d1,d2,d3,…,dn},其中,t-nw表示前n周中的第n周与t对应的时间,dn表示前n周中的第n周与t对应的时间的总历史请求流量。

a2、利用{d1,d2,d3,…,dn}确定与当前时间t对应的总请求流量基线,具体内容如下:

对{d1,d2,d3,…,dn}求平均值,即

对{d1,d2,d3,…,dn}按照从小到大的顺序进行排序,取排序后的第0.8n个数据为dx,取排序后的第0.2n个数据为dy,需要说明的是,0.8n和0.2n不是整数时向上取整。

则当前时间t对应的总请求流量基线的上限dmax和下限dmin分别为

a3、将当前时间t的总请求流量与对应的总请求流量进行比较,若dmin≤d≤dmax,则表示当前时间t的总请求流量为正常数据,接口未出现异常。若d<dmin或d>dmax,则表示当前时间t的总请求流量为异常数据,接口出现异常。

b1、采集并求和当前时间(以下以t表示)每个服务节点的请求流量,得到当前时间t对应的总请求流量(以下以dreq表示),采集并求和当前时间t每个服务节点的回应流量,得到当前时间t对应的总回应流量(以下以dres表示),计算当前时间t对应的总请求流量和总回应流量之差(以下以s表示)。

获取{t-w,-2w,t-3w,…,t-nw}这前n周中每周与当前时间t对应的时间的总历史请求流量和总历史回应流量之差,前n周中每周与当前时间t对应的总历史请求流量和总历史回应流量之差记为{s1,s2,…,sn},其中,t-nw表示前n周中的第n周与t对应的时间,sn表示前n周中的第n周与t对应的时间的总历史请求流量和总历史回应流量之差。

b2、利用{s1,s2,…,sn}确定与当前时间t对应的总请求回应流量之差基线,具体内容如下:

对{s1,s2,…,sn}求平均值,即

将{s1,s2,…,sn}按照从小到大的顺序进行排序,取排序后的第0.8n个数据为sx,取排序后的第0.2n个数据为sy,0.8n和0.2n不是整数时向上取整。

则当前时间t对应的总请求回应流量之差基线的上限smax和下限smin分别为

b3、将当前时间t的总请求流量和总回应流量之差和总请求回应流量之差基线进行比较,若smin≤s≤smax,则表示当前时间t的总请求流量和总回应流量之差为正常数据,接口未出现异常。若s<smin或s>smax,则表示当前时间t的总请求流量和总回应流量之差为异常数据,接口出现异常。

在本发明实施例中,预先前n周每分钟的历史流量数据,确定一周中第m天第h小时第l分钟对应的流量基线。通过比对当前时间对应的流量基线和当前时间采集得到的每个服务节点的流量数据,确定接口是否出现异常,即利用一天中不同时间点对应的流量数据和流量基线对接口进行监控,提高监控接口异常的准确性和及时性。

为更好解释说明上述本发明实施例图1和图2示出的内容,通过图3示出的一种接口监控方法的另一流程图进行举例说明,需要说明的是,图3仅用于举例说明,包括以下步骤。

需要说明的是,本发明实施例所涉及的接口监控方法应用于接口监控装置,该接口监控装置包括:采集组件、集中分析组件和报警判断组件。

步骤s301:采集组件采集前n周每分钟每个服务节点的历史流量数据,并记录采集时间(图3中的时间序列获取),集中分析组件分别将每个服务节点的历史请求流量和历史回应流量存储至数据库中(图3中的分类流量存储入库)。

步骤s302:集中分析组件对前n周每分钟所有服务节点的历史请求流量和历史回应流量进行总和计算,并将计算结果(单位时间总流量)存储至数据库。

步骤s303:集中分析组件利用数据库中的数据,计算流量基线。

步骤s304:采集组件采集当前时间各个服务节点的流量数据,集中分析组件对当前采集得到的每个服务节点的流量数据进行流量总和计算。

步骤s305:报警判断组件结合每个服务节点的流量节点与总和计算结果,进行流量异常判断。

步骤s306:若报警判断组件确定流量未出现异常,集中分析组件删除最早采集得到的历史流量数据,将当前采集得到的流量数据添加至数据统计序列,并预估未来的流量基线。若报警判断组件确定流量出现异常,报警判断组件进行异常告警。

需要说明的是,步骤s301至步骤s306的执行原理,可参见上述本发明实施例图1和图2中各个步骤的内容,在此不再进行赘述。

与上述本发明实施例提供的一种接口监控方法相对应,参见图4,本发明实施例还提供了一种接口监控装置的结构框图,该接口监控装置包括:采集组件401、集中分析组件402和报警判断组件403;

采集组件401,用于获取当前时间每个服务节点对应的流量数据。

集中分析组件402,用于确定与当前时间对应的预设的流量基线,流量基线为根据每个服务节点对应的历史流量数据确定。

报警判断组件403,用于结合流量基线和每个服务节点对应的流量数据,确定接口是否出现异常,若接口出现异常,发送用于指示所述接口出现异常的报警信息。

在本发明实施例中,预先设置不同时间点对应的流量基线,通过比对当前时间对应的流量基线和当前时间采集得到的每个服务节点的流量数据,确定接口是否出现异常,即利用一天中不同时间点对应的流量数据和流量基线对接口进行监控,提高监控接口异常的准确性和及时性。

优选的,结合图4示出的内容,历史流量数据包括历史请求流量和历史回应流量,用于确定流量基线的集中分析组件402包括:获取模块、第一确定模块、第二确定模块、第三确定模块、第一计算模块、第四确定模块、第二计算模块、第五确定模块和第六确定模块,各个模块的执行原理如下:

获取模块,用于获取每个服务节点在前n周每分钟对应的历史请求流量和历史回应流量,n为正整数。

第一确定模块,用于利用前n周中每周第m天第h小时第l分钟对应的每个服务节点的历史请求流量,确定一周中第m天第h小时第l分钟对应的请求流量基线,m为大于等于1小于等于7的整数,h为大于等于1小于等于24的整数,l为大于等于1小于等于60的整数。

第二确定模块,用于根据前n周中每周第m天第h小时第l分钟对应的每个服务节点的历史回应流量,确定一周中第m天第h小时第l分钟对应的回应流量基线。

第三确定模块,用于通过前n周中每周第m天第h小时第l分钟对应的每个服务节点的历史请求流量和历史回应流量之差,确定一周中第m天第h小时第l分钟对应的请求回应流量之差基线。

第一计算模块,用于计算前n周中每周第m天第h小时第l分钟对应的每个服务节点的历史请求流量之和,得到前n周中每周第m天第h小时第l分钟对应的总历史请求流量。

第四确定模块,用于利用前n周中每周对应的总历史请求流量,确定一周中第m天第h小时第l分钟对应的总请求流量基线。

第二计算模块,用于计算前n周中每周第m天第h小时第l分钟对应的每个服务节点的历史回应流量之和,得到前n周中每周第m天第h小时第l分钟对应的总历史回应流量。

第五确定模块,用于根据前n周中每周对应的总历史回应流量,确定一周中第m天第h小时第l分钟对应的总回应流量基线。

第六确定模块,用于利用前n周中每周对应的总历史请求流量和总历史回应流量之差,确定一周中第m天第h小时第l分钟对应的总请求回应流量之差基线。

在本发明实施例中,预先前n周每分钟的历史流量数据,确定一周中第m天第h小时第l分钟对应的流量基线。通过比对当前时间对应的流量基线和当前时间采集得到的每个服务节点的流量数据,确定接口是否出现异常,即利用一天中不同时间点对应的流量数据和流量基线对接口进行监控,提高监控接口异常的准确性和及时性。

优选的,结合图4示出的内容,流量数据包括请求流量和回应流量,报警判断组件403包括:计算模块、第一确定模块、第二确定模块、第三确定模块、第四确定模块、第五确定模块和第六确定模块,各个模块的执行原理如下:

计算模块,用于计算每个所述服务节点对应的请求流量之和,得到总请求流量,以及计算每个所述服务节点的回应流量之和,得到总回应流量;

第一确定模块,用于针对每一服务节点,若服务节点的请求流量不在请求流量基线的范围内,确定接口出现异常。

第二确定模块,用于针对每一服务节点,若服务节点的回应流量不在回应流量基线的范围内,确定接口出现异常。

第三确定模块,用于针对每一服务节点,若服务节点的请求流量和回应流量之差不在请求回应流量之差基线的范围内,确定接口出现异常。

第四确定模块,用于若总请求流量不在总请求流量基线的范围内,确定接口出现异常。

第五确定模块,用于若总回应流量不在总回应流量基线的范围内,确定接口出现异常。

第六确定模块,用于若总请求流量和总回应流量之差不在总请求回应流量之差基线的范围内,确定接口出现异常。

优选的,结合图4示出的内容,该接口监控装置还包括:

添加组件,用于若接口未出现异常,将每个服务节点对应的流量数据添加至数据统计序列。

优选的,结合图4示出的内容,该接口监控装置还包括:

更新组件,用于利用数据统计序列中的流量数据,更新流量基线。

综上所述,本发明实施例提供一种接口监控方法及装置,预先设置不同时间点对应的流量基线,利用一天中不同时间点对应的流量数据和流量基线对接口进行监控,提高监控接口异常的准确性和及时性。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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