微服务接口监控方法及装置制造方法及图纸

技术编号:38127612 阅读:16 留言:0更新日期:2023-07-08 09:33
本发明专利技术提供一种微服务接口监控方法及装置,该方法包括:基于预先配置的监控代码逻辑,拦截各个访问微服务的接口请求,得到接口数据;查询服务端预先配置的指标配置内容;根据指标配置内容和接口请求的路径,判断是否需要监控接口请求;若需要,调用服务端的rest接口,将接口数据上送至服务端,使服务端在接收到接口数据后,将接口数据存储于预先建立的数据库中,并根据预先配置的指标配置,将接口数据进行消息触达。在本方案中,如果判断出需要监控拦截到的访问微服务的接口请求,调用服务端的rest接口,将接口数据上送至服务端,服务端根据预先配置的指标配置进行消息触达,从而在微服务接口出现异常时能够预警和超时预警。服务接口出现异常时能够预警和超时预警。服务接口出现异常时能够预警和超时预警。

【技术实现步骤摘要】
微服务接口监控方法及装置


[0001]本专利技术涉及微服务
,尤其涉及一种微服务接口监控方法及装置。

技术介绍

[0002]微服务通过restful接口对外提供服务,在生产环境中对外提供的接口经常因为网络、数据不正确等出现各自错误,例如:网络异常、数据校验失败、数据库连接超时以及业务异常等。但是,对外提供的接口出现异常后,容易出现以下问题:
[0003]1、微服务研发负责人在研发过程中并不能及时发现对外提供的接口出现异常,只有当用户使用公司提供系统提供的服务受到影响后,通过反馈到公司,研发才能发现问题,才开始排查并解决相关问题。
[0004]2、如果系统对响应时间特别敏感,并不能指定接口超过时进行预警,而且,在SpringBoot项目中,官方组件中并没有提供针对接口监控的功能。
[0005]3、对于关键接口出现异常,在排查问题的时候,只能通过日志文件记录的有限信息猜测具体原因,并没有记录当时接口请求和相应的响应。
[0006]4、接口异常的数据并没有得到沉淀,当研发人员想要全面评估微服务的接口的健康状况时,并没有对应数据依据。
[0007]由此可知,亟需一种SpringBoot项目中微服务接口的监控方式。

技术实现思路

[0008]有鉴于此,本专利技术实施例提供一种微服务接口监控方法及装置,以实现异常预警和超时预警的目的。
[0009]为实现上述目的,本专利技术实施例提供如下技术方案:
[0010]本专利技术实施例第一方面公开了一种微服务接口监控方法,应用于客户端,所述方法包括:
[0011]基于预先配置的监控代码逻辑,拦截各个访问微服务的接口请求,得到接口数据,所述接口数据包括所述接口请求的请求数据和响应数据,所述请求数据至少包含所述接口请求的路径、请求时间、请求头信息和请求体信息,所述路径包括微服务接口的系统名称和统一资源标识符uri,所述响应数据至少包含所述接口请求的响应时间、响应头信息和响应体信息;
[0012]查询服务端预先配置的指标配置内容;
[0013]根据所述指标配置内容和所述接口请求的路径,判断是否需要监控所述接口请求;
[0014]若需要,调用所述服务端的表述性状态转移rest接口,将所述接口数据上送至所述服务端,使所述服务端在接收到所述接口数据后,将所述接口数据存储于预先建立的数据库中,并根据预先配置的指标配置,将所述接口数据进行消息触达。
[0015]可选的,所述基于预先配置的监控代码逻辑,拦截各个访问微服务的接口请求,得
到接口数据,包括:
[0016]基于切面编程技术,配置微服务中的所有接口对应的代码包;
[0017]基于预先配置的监控代码逻辑,监控所述微服务的所有接口;
[0018]调用所述代码包,拦截各个访问所述微服务的所有接口对应的接口方法,得到接口数据。
[0019]可选的,所述根据所述指标配置内容和所述接口请求的路径,判断是否需要监控所述接口请求,包括:
[0020]根据所述指标配置内容,查询所述指标配置内容中与所述接口请求的路径匹配的第一指标配置内容;
[0021]确定所述接口请求的路径中设置的特定比较部分;
[0022]比较所述第一指标配置内容与所述特定比较部分;
[0023]若所述第一指标配置内容与所述特定比较部分相等,确定需要监控所述接口请求;
[0024]若所述第一指标配置内容与所述特定比较部分不相等,确定不需要监控所述接口请求。
[0025]本专利技术实施例第二方面公开了一种微服务接口监控方法,应用于服务端,所述方法包括:
[0026]接收客户端上送的接口数据,并将所述接口数据存储于预先建立的数据库中,所述接口数据由所述客户端基于预先设置的监控代码逻辑,拦截各个访问所述微服务的接口请求得到,所述接口数据包括所述接口请求的请求数据和响应数据,所述请求数据至少包含所述接口请求的路径、请求时间、请求头信息和请求体信息,所述路径包括微服务接口的系统名称和统一资源标识符uri,所述响应数据至少包含所述接口请求的响应时间、响应头信息和响应体信息;
[0027]根据所述微服务接口的系统名称和uri,从预先建立的数据库中查询所述微服务接口对应的指标参数;
[0028]根据所述指标参数,过滤所述接口数据;
[0029]根据所述指标参数,判断所述接口请求是否需要进行消息触达;
[0030]若需要,从所述数据库中获取所述指标参数对应的消息接收人组装数据并进行消息触达。
[0031]可选的,若所述指标参数包括请求耗时阈值、响应数据码值和请求数据码值,所述根据所述指标参数,过滤所述接口数据,包括:
[0032]根据所述接口请求的请求时间和响应时间,确定所述接口请求的请求耗时,所述请求耗时为所述响应时间与所述请求时间的差值;
[0033]比较所述请求耗时与所述请求耗时阈值;
[0034]若所述请求耗时大于所述请求耗时阈值,将所述接口请求确定为超时请求;
[0035]若所述请求耗时小于所述请求耗时阈值,将所述接口请求确定为正常请求,并过滤所述接口请求;
[0036]和/或,
[0037]比较所述响应体信息和所述响应数据码值;
[0038]若所述响应体信息和所述响应数据码值相等,确定需要监控所述接口请求;
[0039]若所述响应体信息和所述响应数据码值不相等,过滤所述接口请求中的其他码值的接口数据;
[0040]和/或,
[0041]比较所述请求体信息和所述请求数据码值;
[0042]若所述请求体信息和所述请求数据码值相等,确定需要监控所述接口请求;
[0043]若所述请求体信息和所述请求数据码值不相等,过滤所述接口请求中的其他码值的接口数据。
[0044]可选的,所述根据所述指标参数,判断所述接口请求是否需要进行消息触达,包括:
[0045]确定指标配置的异常码值和阈值、接口响应的码值、以及所述接口请求实际执行的时间;
[0046]比较所述指标配置的异常码值和所述接口响应的码值;
[0047]若所述指标配置的异常码值和所述接口响应的码值匹配,确定所述接口请求需要消息触达;
[0048]和/或,
[0049]比较所述指标配置的阈值和所述接口请求实际执行的时间;
[0050]若所述接口请求实际执行的时间大于所述指标配置的阈值,确定所述接口请求需要消息触达。
[0051]本专利技术实施例第三方面公开了一种微服务接口监控装置,应用于客户端,所述装置包括:
[0052]拦截模块,用于基于预先配置的监控代码逻辑,拦截各个访问微服务的接口请求,得到接口数据,所述接口数据包括所述接口请求的请求数据和响应数据,所述请求数据至少包含所述接口请求的路径、请求时间、请求头信息和请求体信息,所述路径包括微服务接口的系统名称和统一资源标识符uri,所述响应数据至少包本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种微服务接口监控方法,其特征在于,应用于客户端,所述方法包括:基于预先配置的监控代码逻辑,拦截各个访问微服务的接口请求,得到接口数据,所述接口数据包括所述接口请求的请求数据和响应数据,所述请求数据至少包含所述接口请求的路径、请求时间、请求头信息和请求体信息,所述路径包括微服务接口的系统名称和统一资源标识符uri,所述响应数据至少包含所述接口请求的响应时间、响应头信息和响应体信息;查询服务端预先配置的指标配置内容;根据所述指标配置内容和所述接口请求的路径,判断是否需要监控所述接口请求;若需要,调用所述服务端的表述性状态转移rest接口,将所述接口数据上送至所述服务端,使所述服务端在接收到所述接口数据后,将所述接口数据存储于预先建立的数据库中,并根据预先配置的指标配置,将所述接口数据进行消息触达。2.根据权利要求1所述的方法,其特征在于,所述基于预先配置的监控代码逻辑,拦截各个访问微服务的接口请求,得到接口数据,包括:基于切面编程技术,配置微服务中的所有接口对应的代码包;基于预先配置的监控代码逻辑,监控所述微服务的所有接口;调用所述代码包,拦截各个访问所述微服务的所有接口对应的接口方法,得到接口数据。3.根据权利要求1所述的方法,其特征在于,所述根据所述指标配置内容和所述接口请求的路径,判断是否需要监控所述接口请求,包括:根据所述指标配置内容,查询所述指标配置内容中与所述接口请求的路径匹配的第一指标配置内容;确定所述接口请求的路径中设置的特定比较部分;比较所述第一指标配置内容与所述特定比较部分;若所述第一指标配置内容与所述特定比较部分相等,确定需要监控所述接口请求;若所述第一指标配置内容与所述特定比较部分不相等,确定不需要监控所述接口请求。4.一种微服务接口监控方法,其特征在于,应用于服务端,所述方法包括:接收客户端上送的接口数据,并将所述接口数据存储于预先建立的数据库中,所述接口数据由所述客户端基于预先设置的监控代码逻辑,拦截各个访问所述微服务的接口请求得到,所述接口数据包括所述接口请求的请求数据和响应数据,所述请求数据至少包含所述接口请求的路径、请求时间、请求头信息和请求体信息,所述路径包括微服务接口的系统名称和统一资源标识符uri,所述响应数据至少包含所述接口请求的响应时间、响应头信息和响应体信息;根据所述微服务接口的系统名称和uri,从预先建立的数据库中查询所述微服务接口对应的指标参数;根据所述指标参数,过滤所述接口数据;根据所述指标参数,判断所述接口请求是否需要进行消息触达;若需要,从所述数据库中获取所述指标参数对应的消息接收人组装数据并进行消息触达。
5.根据权利要求4所述的方法,其特征在于,若所述指标参数包括请求耗时阈值、响应数据码值和请求数据码值,所述根据所述指标参数,过滤所述接口数据,包括:根据所述接口请求的请求时间和响应时间,确定所述接口请求的请求耗时,所述请求耗时为所述响应时间与所述请求时间的差值;比较所述请求耗时与所述请求耗时阈值;若所述请求耗时大于所述请求耗时阈值,将所述接口请求确定为超时请求;若所述请求耗时小于所述请求耗时阈值,将所述接口请求确定为正常请求,并过滤所述接口请求;和/或,比较所述响应体信息和所述响应数据码值;若所述响应体信息和所述响应数据码值相等,确定需要监控所述接口请求;若所述响应体信息和所述响应数据码值不相等,过滤所述接口请求中的其他码值的接口数据;和/或,比较所述请求体信息和所述请求数据码值;若所述请求体信息和所述请求数据码值相等,确...

【专利技术属性】
技术研发人员:陆志庆
申请(专利权)人:北京商银微芯科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1