本申请涉及通信,特别是涉及一种应用程序接口数据的监控方法、装置、电子设备及计算机可读存储介质。
背景技术:
1、在应用监控技术领域,往往通过多种技术手段来实现对应用接口的监听。开发人员在服务部署后往往需要及时了解应用接口调用情况,以在发现故障时能够快速做出响应。由于容器云生命周期特性,在容器云上所部署应用的这种需求也就尤为迫切,同时用户不希望对应用程序进行任何修改,从而适配各家容器云供应商,此时接口监控方案就尤为关键。
2、如图1所示,现有的应用接口调用要在应用服务端加入代码片段或依赖包,以实现接口调用信息记录或消息发送,需要对应用程序做一定修改。这样,需要对应用程序代码进行侵入,同时,应用程序与容器云平台之间的耦合度高,不便于将应用程序进行多平台部署。
技术实现思路
1、本申请的目的在于提供一种应用程序接口数据的监控方法、装置、电子设备及计算机可读存储介质,无需对应用程序代码进行侵入,同时降低了应用程序与容器云平台之间的耦合度,可方便将应用程序进行多平台部署。
2、为达到上述目的:
3、第一方面,本申请实施例提供了一种应用程序接口数据的监控方法,所述方法包括以下步骤:
4、将目标应用程序接入容器云,并在容器云中确定与所述目标应用程序对应的外接采集程序;
5、通过所述外接采集程序实时采集所述目标应用程序的接口数据,并发送到消息组件,以使所述消息组件对所述接口数据进行预设处理,生成处理后的接口数据;
6、控制数据收集引擎将所述处理后的接口数据发送到elasticsearch系统进行存储,并基于所述elasticsearch系统对所述处理后的接口数据进行监控。
7、可选的,所述在容器云中确定与所述目标应用程序对应的外接采集程序,包括:
8、根据目标需求对初始的字节码进行功能添加,并将功能添加后的所述字节码发送到容器云的代理程序中;
9、控制所述代理程序基于所述字节码对初始的外接采集程序的功能进行更新,将更新后的外接采集程序确定为所述目标应用程序对应的外接采集程序。
10、可选的,所述方法还包括:
11、通过所述代理程序将对所述接口数据进行调用的记录信息存储至接口日志。
12、可选的,所述基于所述elasticsearch系统对所述处理后的接口数据进行监控,包括:
13、响应于查询请求,在elasticsearch系统存储的所述处理后的接口数据中搜索与所述查询请求相对应的目标接口数据,并对所述目标接口数据执行监控操作。
14、可选的,所述对所述目标接口数据执行监控操作,包括:
15、根据所述查询请求配置指定响应码和关键字;
16、通过监测在所述目标接口数据中所述指定响应码是否出现,或者所述关键字出现次数是否超过预设次数中的至少一种情况,判断所述目标接口数据是否异常,并进行相对应告警处理。
17、第二方面,本申请实施例提供了一种应用程序接口数据的监控装置,所述装置包括:
18、处理模块,用于将目标应用程序接入容器云,并在容器云中确定与所述目标应用程序对应的外接采集程序;
19、采集模块,用于通过所述外接采集程序实时采集所述目标应用程序的接口数据,并发送到消息组件,以使所述消息组件对所述接口数据进行预设处理,生成处理后的接口数据;
20、监控模块,用于控制数据收集引擎将所述处理后的接口数据发送到elasticsearch系统进行存储,并基于所述elasticsearch系统对所述处理后的接口数据进行监控。
21、可选的,所述处理模块,具体用于:
22、根据目标需求对初始的字节码进行功能添加,并将功能添加后的所述字节码发送到容器云的代理程序中;
23、控制所述代理程序基于所述字节码对初始的外接采集程序的功能进行更新,将更新后的外接采集程序确定为所述目标应用程序对应的外接采集程序。
24、可选的,所述监控模块,还用于:
25、通过所述代理程序将对所述接口数据进行调用的记录信息存储至接口日志。
26、可选的,所述监控模块,具体用于:
27、响应于查询请求,在elasticsearch系统存储的所述处理后的接口数据中搜索与所述查询请求相对应的目标接口数据,并对所述目标接口数据执行监控操作。
28、可选地,所述监控模块,具体用于:
29、根据所述查询请求配置指定响应码和关键字;
30、通过监测在所述目标接口数据中所述指定响应码是否出现,或者所述关键字出现次数是否超过预设次数中的至少一种情况,判断所述目标接口数据是否异常,并进行相对应告警处理。
31、第三方面,本申请实施例公开了一种电子设备,包括:存储有可执行程序代码的存储器;与所述存储器耦合的处理器;所述处理器调用所述存储器中存储的所述可执行程序代码,用于执行如第一方面所述的应用程序接口数据的监控方法。
32、第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够实现如第一方面所述的应用程序接口数据的监控方法。
33、本申请实施例提供了一种应用程序接口数据的监控方法、装置、电子设备及计算机可读存储介质,所述方法包括以下步骤:将目标应用程序接入容器云,并在容器云中确定与所述目标应用程序对应的外接采集程序;通过所述外接采集程序实时采集所述目标应用程序的接口数据,并发送到消息组件,以使所述消息组件对所述接口数据进行预设处理,生成处理后的接口数据;控制数据收集引擎将所述处理后的接口数据发送到elasticsearch系统进行存储,并基于所述elasticsearch系统对所述处理后的接口数据进行监控。如此,通过将应用程序接入容器云,进而可直接通过容器云获取应用程序的接口数据,以对接口数据进行存储和监控,无需对应用程序代码进行侵入,同时降低了应用程序与容器云平台之间的耦合度,可方便将应用程序进行多平台部署。
1.一种应用程序接口数据的监控方法,其特征在于,所述方法包括以下步骤:
2.根据权利要求1所述的方法,其特征在于,所述在容器云中确定与所述目标应用程序对应的外接采集程序,包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述基于所述elasticsearch系统对所述处理后的接口数据进行监控,包括:
5.根据权利要求4所述的方法,其特征在于,所述对所述目标接口数据执行监控操作,包括:
6.一种应用程序接口数据的监控装置,其特征在于,所述装置包括:
7.根据权利要求6所述的装置,其特征在于,所述处理模块,具体用于:
8.根据权利要求6所述的装置,其特征在于,所述监控模块,具体用于:
9.一种电子设备,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序用于由所述处理器加载并执行如权利要求1~5中任意一项的应用程序接口数据的监控方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有指令,所述指令用于由处理器加载并执行如权利要求1~5中任意一项的应用程序接口数据的监控方法。