CN116719696A - 应用程序接口数据的监控方法、装置、设备及存储介质 - Google Patents

应用程序接口数据的监控方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN116719696A
CN116719696A CN202310723038.0A CN202310723038A CN116719696A CN 116719696 A CN116719696 A CN 116719696A CN 202310723038 A CN202310723038 A CN 202310723038A CN 116719696 A CN116719696 A CN 116719696A
Authority
CN
China
Prior art keywords
interface data
application program
program
target
monitoring
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310723038.0A
Other languages
English (en)
Inventor
宋程杰
王楷涵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongke Yungu Technology Co Ltd
Original Assignee
Zhongke Yungu Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhongke Yungu Technology Co Ltd filed Critical Zhongke Yungu Technology Co Ltd
Priority to CN202310723038.0A priority Critical patent/CN116719696A/zh
Publication of CN116719696A publication Critical patent/CN116719696A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种应用程序接口数据的监控方法、装置、电子设备及计算机可读存储介质,所述方法包括:将目标应用程序接入容器云,并在容器云中确定与目标应用程序对应的外接采集程序;通过外接采集程序实时采集目标应用程序的接口数据,并发送到消息组件,以使消息组件对接口数据进行预设处理,生成处理后的接口数据;控制数据收集引擎将处理后的接口数据发送到Elasticsearch系统进行存储,并基于Elasticsearch系统对处理后的接口数据进行监控。如此,通过将应用程序接入容器云,进而可直接通过容器云获取应用程序的接口数据,以对接口数据进行存储和监控,无需对应用程序代码进行侵入,同时降低了应用程序与容器云平台之间的耦合度,可方便将应用程序进行多平台部署。

Description

应用程序接口数据的监控方法、装置、设备及存储介质
技术领域
本申请涉及通信技术领域,特别是涉及一种应用程序接口数据的监控方法、装置、电子设备及计算机可读存储介质。
背景技术
在应用监控技术领域,往往通过多种技术手段来实现对应用接口的监听。开发人员在服务部署后往往需要及时了解应用接口调用情况,以在发现故障时能够快速做出响应。由于容器云生命周期特性,在容器云上所部署应用的这种需求也就尤为迫切,同时用户不希望对应用程序进行任何修改,从而适配各家容器云供应商,此时接口监控方案就尤为关键。
如图1所示,现有的应用接口调用要在应用服务端加入代码片段或依赖包,以实现接口调用信息记录或消息发送,需要对应用程序做一定修改。这样,需要对应用程序代码进行侵入,同时,应用程序与容器云平台之间的耦合度高,不便于将应用程序进行多平台部署。
发明内容
本申请的目的在于提供一种应用程序接口数据的监控方法、装置、电子设备及计算机可读存储介质,无需对应用程序代码进行侵入,同时降低了应用程序与容器云平台之间的耦合度,可方便将应用程序进行多平台部署。
为达到上述目的:
第一方面,本申请实施例提供了一种应用程序接口数据的监控方法,所述方法包括以下步骤:
将目标应用程序接入容器云,并在容器云中确定与所述目标应用程序对应的外接采集程序;
通过所述外接采集程序实时采集所述目标应用程序的接口数据,并发送到消息组件,以使所述消息组件对所述接口数据进行预设处理,生成处理后的接口数据;
控制数据收集引擎将所述处理后的接口数据发送到Elasticsearch系统进行存储,并基于所述Elasticsearch系统对所述处理后的接口数据进行监控。
可选的,所述在容器云中确定与所述目标应用程序对应的外接采集程序,包括:
根据目标需求对初始的字节码进行功能添加,并将功能添加后的所述字节码发送到容器云的代理程序中;
控制所述代理程序基于所述字节码对初始的外接采集程序的功能进行更新,将更新后的外接采集程序确定为所述目标应用程序对应的外接采集程序。
可选的,所述方法还包括:
通过所述代理程序将对所述接口数据进行调用的记录信息存储至接口日志。
可选的,所述基于所述Elasticsearch系统对所述处理后的接口数据进行监控,包括:
响应于查询请求,在Elasticsearch系统存储的所述处理后的接口数据中搜索与所述查询请求相对应的目标接口数据,并对所述目标接口数据执行监控操作。
可选的,所述对所述目标接口数据执行监控操作,包括:
根据所述查询请求配置指定响应码和关键字;
通过监测在所述目标接口数据中所述指定响应码是否出现,或者所述关键字出现次数是否超过预设次数中的至少一种情况,判断所述目标接口数据是否异常,并进行相对应告警处理。
第二方面,本申请实施例提供了一种应用程序接口数据的监控装置,所述装置包括:
处理模块,用于将目标应用程序接入容器云,并在容器云中确定与所述目标应用程序对应的外接采集程序;
采集模块,用于通过所述外接采集程序实时采集所述目标应用程序的接口数据,并发送到消息组件,以使所述消息组件对所述接口数据进行预设处理,生成处理后的接口数据;
监控模块,用于控制数据收集引擎将所述处理后的接口数据发送到Elasticsearch系统进行存储,并基于所述Elasticsearch系统对所述处理后的接口数据进行监控。
可选的,所述处理模块,具体用于:
根据目标需求对初始的字节码进行功能添加,并将功能添加后的所述字节码发送到容器云的代理程序中;
控制所述代理程序基于所述字节码对初始的外接采集程序的功能进行更新,将更新后的外接采集程序确定为所述目标应用程序对应的外接采集程序。
可选的,所述监控模块,还用于:
通过所述代理程序将对所述接口数据进行调用的记录信息存储至接口日志。
可选的,所述监控模块,具体用于:
响应于查询请求,在Elasticsearch系统存储的所述处理后的接口数据中搜索与所述查询请求相对应的目标接口数据,并对所述目标接口数据执行监控操作。
可选地,所述监控模块,具体用于:
根据所述查询请求配置指定响应码和关键字;
通过监测在所述目标接口数据中所述指定响应码是否出现,或者所述关键字出现次数是否超过预设次数中的至少一种情况,判断所述目标接口数据是否异常,并进行相对应告警处理。
第三方面,本申请实施例公开了一种电子设备,包括:存储有可执行程序代码的存储器;与所述存储器耦合的处理器;所述处理器调用所述存储器中存储的所述可执行程序代码,用于执行如第一方面所述的应用程序接口数据的监控方法。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够实现如第一方面所述的应用程序接口数据的监控方法。
本申请实施例提供了一种应用程序接口数据的监控方法、装置、电子设备及计算机可读存储介质,所述方法包括以下步骤:将目标应用程序接入容器云,并在容器云中确定与所述目标应用程序对应的外接采集程序;通过所述外接采集程序实时采集所述目标应用程序的接口数据,并发送到消息组件,以使所述消息组件对所述接口数据进行预设处理,生成处理后的接口数据;控制数据收集引擎将所述处理后的接口数据发送到Elasticsearch系统进行存储,并基于所述Elasticsearch系统对所述处理后的接口数据进行监控。如此,通过将应用程序接入容器云,进而可直接通过容器云获取应用程序的接口数据,以对接口数据进行存储和监控,无需对应用程序代码进行侵入,同时降低了应用程序与容器云平台之间的耦合度,可方便将应用程序进行多平台部署。
附图说明
图1为现有的应用接口数据调用流程示意图;
图2为本发明一个较佳实施例提供的一种应用程序接口数据的监控方法的流程示意图;
图3为本发明一个较佳实施例提供的一种应用程序接口数据的监控方法中接口数据采集示意图;
图4为本发明一个较佳实施例提供的容器云接口数据监控部署的流程示意图;
图5为本发明一个较佳实施例提供的一种应用程序接口数据的监控装置的结构示意图;
图6为本发明另一个较佳实施例提供的一种应用程序接口数据的监控装置的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素,此外,本申请不同实施例中具有同样命名的部件、特征、要素可能具有相同含义,也可能具有不同含义,其具体含义需以其在该具体实施例中的解释或者进一步结合该具体实施例中上下文进行确定。
应当理解,尽管在本文可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本文范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语"如果"可以被解释成为"在……时"或"当……时"或"响应于确定"。再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在所述的特征、步骤、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、步骤、操作、元件、组件、项目、种类、和/或组的存在、出现或添加。此处使用的术语“或”和“和/或”被解释为包括性的,或意味着任一个或任何组合。因此,“A、B或C”或者“A、B和/或C”意味着“以下任一个:A;B;C;A和B;A和C;B和C;A、B和C”。仅当元件、功能、步骤或操作的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。
应该理解的是,虽然本申请实施例中的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
需要说明的是,在本文中,采用了诸如S101、S102等步骤代号,其目的是为了更清楚简要地表述相应内容,不构成顺序上的实质性限制,本领域技术人员在具体实施时,可能会先执行S102后执行S101等,但这些均应在本申请的保护范围之内。
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或者“单元”的后缀仅为了有利于本申请的说明,其本身没有特定的意义。因此,“模块”、“部件”或者“单元”可以混合地使用。
首先,对本公开实施例中所提到的特定名词进行解释说明,具体如下。
容器云:通过Docker技术在集群服务器上部署容器服务实现的云服务产品,容器云包括所有代码,各种依赖甚至操作系统,让应用程序几乎在任何地方都可以运行。
Docker容器:一个开源的应用容器引擎,让开发者可以以统一的方式打包应用以及依赖包到一个可移植的容器中,然后发布到任何安装了Docker引擎的服务器上,也可以实现虚拟化。
字节码增强技术:一类对现有字节码进行修改或者动态生成全新字节码文件的技术,通过该技术可在不变更业务代码前提下实现自定义逻辑。
镜像服务(IMS,Image Management Service):提供镜像的生命周期管理能力。用户可以灵活地使用公共镜像、私有镜像或共享镜像申请弹性云服务器和裸金属服务器。同时,用户还能通过已有的云服务器或使用外部镜像文件创建私有镜像,实现业务上云或云上迁移。
ElasticSearch系统:一个分布式、高扩展、高实时的搜索与数据分析引擎,广泛应用于金融、安全等大数据场景。ElasticSearch提供横向可扩展性、分片机制,高可用性,一个分片可以设置多个副本,即使服务器宕机仍旧可以照常运行。
参阅图2,为本申请实施例提供的一种应用程序接口数据的监控方法,该应用程序接口数据的监控方法可以由本申请实施例提供的一种应用程序接口数据的监控装置来执行,该应用程序接口数据的监控装置可以采用软件和/或硬件的方式来实现,本实施例中的以应用程序接口数据的监控方法应用于服务器为例,本实施例提供的应用程序接口数据的监控方法包括以下步骤:
步骤S101:将目标应用程序接入容器云,并在容器云中确定与所述目标应用程序对应的外接采集程序。
具体地,可以先将待处理的目标应用程序接入容器云,接着在容器云中确定与所述目标应用程序对应的外接采集程序。其中,所述目标应用程序可以为个人计算机上的办公软件、计算机辅助设计程序、图片处理软件、旅行应用、生产力应用等,具体可结合实际需求进行设置。
在一实施方式中,所述在容器云中确定与所述目标应用程序对应的外接采集程序,包括:根据目标需求对初始的字节码进行功能添加,并将功能添加后的所述字节码发送到容器云的代理程序中;控制所述代理程序基于所述字节码对初始的外接采集程序的功能进行更新,将更新后的外接采集程序确定为所述目标应用程序对应的外接采集程序。
具体地,根据目标需求,通过字节码增强技术对初始的字节码进行功能添加,并将功能添加后的所述字节码发送到容器云的代理程序的目录中。接着,将所述代理程序打包到镜像服务,通过所述镜像服务对初始的外接采集程序的功能进行更新,并将更新后的外接采集程序确定为所述目标应用程序对应的外接采集程序,以达到根据目标需求对外接采集程序设置自定义逻辑的目的,实现设置用于采集目标应用程序的接口数据的外接采集程序。
步骤S102:通过所述外接采集程序实时采集所述目标应用程序的接口数据,并发送到消息组件,以使所述消息组件对所述接口数据进行预设处理,生成处理后的接口数据。
具体地,通过所述外接采集程序实时采集所述目标应用程序的接口数据,并发送到消息组件如Kafka,以使所述消息组件对所述接口数据进行预设处理,包括基于所述接口数据的主题topic进行消息存放,生成处理后的接口数据。在一实施方式中,如图3所示,在对目标应用程序进行接口数据采集时,将代理程序写入接口日志(api.log),并通过容器云(采集pod)对所述接口日志进行读取,以及对目标应用程序的接口数据对应的configMap数据进行读取,所述configMap数据为接口数据里的代码数据。
在一实施方式中,在通过所述外接采集程序实时采集所述目标应用程序的接口数据时,可通过字节码增强的方式设置数据采集的轮询间隔。具体地,获取当前时间点与上一次对目标应用程序的接口数据进行采集的时间点之间的时间间隔,若所述时间间隔满足设置的接口数据的采集时间间隔,则对目标应用程序的接口数据进行采集;若不满足,则继续等待。这里,还可以根据实际需求直接对目标应用程序的接口数据进行采集,即不设置数据采集的轮询间隔。
步骤S103:通过数据收集引擎将所述处理后的接口数据发送到Elasticsearch系统进行存储,并在所述Elasticsearch系统中对所述处理后的接口数据进行监控。
具体地,控制数据收集引擎根据所述消息组件中各处理后的接口数据的主题topic,通过消息组件如Kafka将所述处理后的接口数据以文件的形式发送到Elasticsearch系统进行存储,并基于所述Elasticsearch系统对所述处理后的接口数据信息进行监控。
在一实施方式中,所述方法还包括:通过所述代理程序将对所述接口数据进行调用的记录信息存储至接口日志。
其中,对所述接口数据进行调用的记录信息可包括对所述接口数据进行采集、存储和监控等行为信息以及所述行为信息的对应时间信息。
在一实施方式中,所述基于所述Elasticsearch系统对所述处理后的接口数据进行监控,包括:响应于查询请求,在Elasticsearch系统存储的所述处理后的接口数据中搜索与所述查询请求相对应的目标接口数据,并对所述目标接口数据执行监控操作。
具体地,响应于查询请求,对所述目标接口数据的监控服务设置轮询时间间隔,以轮询的方式在Elasticsearch系统存储的所述处理后的接口数据中直接搜索与所述查询请求相对应的目标接口数据,并通过Elasticsearch系统的倒排索引快速进行模糊匹配以查找目标接口数据,进而对所述目标接口数据进行监测。其中,所述对所述目标接口数据进行监测,可包括:判断所述目标接口数据是否满足预设的数据异常条件,若所述目标接口数据满足预设的数据异常条件,则确定当前目标接口数据异常,并进行告警,发送给用户;若所述目标接口数据不满足所述预设的数据异常条件,则确定当前目标接口数据正常,并发送给用户。如此,通过在Elasticsearch系统存储的所述处理后的接口数据中直接搜索与所述查询请求相对应的目标接口数据并进行监控,实现对接口数据的快速检测,并及时向用户进行警示。
在一实施方式中,所述对所述目标接口数据执行监控操作,包括:根据所述查询请求配置指定响应码和关键字;通过监测在所述目标接口数据中所述指定响应码是否出现,或者所述关键字出现次数是否超过预设次数中的至少一种情况,判断所述目标接口数据是否异常,并进行相对应告警处理。
其中,所述接口数据异常可以是以下任意一种情况:在所述目标接口数据中出现所述指定响应码,以及在所述目标接口数据中所述关键字出现次数小于预设次数;在所述目标接口数据中没有出现所述指定响应码,以及在所述目标接口数据中所述关键字出现次数大于或等于预设次数;在所述目标接口数据中出现所述指定响应码,以及在所述目标接口数据中所述关键字出现次数大于或等于预设次数。
综上,上述实施例提供的应用程序接口数据的监控方法中,通过将应用程序接入容器云,进而可直接通过容器云获取应用程序的接口数据,以对接口数据进行存储和监控,无需对应用程序代码进行侵入,同时降低了应用程序与容器云平台之间的耦合度,有助于及时了解应用程序的接口调用情况。
基于前述实施例相同的发明构思,下面通过一具体示例对前述实施例提供的方法进行详细说明。
如图4所示,假设以应用程序为应用A为例,通过容器云对所述应用程序的接口数据进行采集,并消费Kafka消息队列进行消息存放,然后通过所述Kafka将所述日志数据以文件的形式发送到Elasticsearch系统进行存储,即对所述应用A接口数据的消息持久化服务写入。这里,在对所述接口数据进行存储之后,可通过轮询的方式在Elasticsearch系统存储的所述处理后的接口数据中直接搜索所述应用A的接口数据,并对所述应用A的接口数据进行监控操作,这里,所述对所述应用A的接口数据进行监控操作,包括:检测所述接口数据中是否出现指定响应码,或者检测所述所述接口数据中出现所述关键字的次数是否超过预设次数,若检测所述接口数据中出现指定响应码,或者出现检测所述所述接口数据中出现所述关键字的次数大于或等于预设次数的任意一种情况,则判断所述目标接口数据异常,并通知用户进行相对应告警处理;若没有检测出现上述情况,则判断所述目标接口数据正常,并通知用户。
参阅图5,为本申请实施例提供的应用程序接口数据的监控装置,所述应用程序接口数据的监控装置包括处理模块、采集模块和监控模块,其中,
处理模块,用于将目标应用程序接入容器云,并在容器云中确定与所述目标应用程序对应的外接采集程序;
采集模块,用于通过所述外接采集程序实时采集所述目标应用程序的接口数据,并发送到消息组件,以使所述消息组件对所述接口数据进行预设处理,生成处理后的接口数据;
监控模块,用于控制数据收集引擎将所述处理后的接口数据发送到Elasticsearch系统进行存储,并基于所述Elasticsearch系统对所述处理后的接口数据进行监控。
在一实施方式中,所述处理模块,具体用于根据目标需求对初始的字节码进行功能添加,并将功能添加后的所述字节码发送到容器云的代理程序中;控制所述代理程序基于所述字节码对初始的外接采集程序的功能进行更新,将更新后的外接采集程序确定为所述目标应用程序对应的外接采集程序。
具体地,根据目标需求,通过字节码增强技术对初始的字节码进行功能添加,并将功能添加后的所述字节码发送到容器云的代理程序的目录中。接着,将所述代理程序打包到镜像服务,通过所述镜像服务对初始的外接采集程序的功能进行更新,并将更新后的外接采集程序确定为所述目标应用程序对应的外接采集程序,以达到根据目标需求对外接采集程序设置自定义逻辑的目的,实现设置用于采集目标应用程序的接口数据的外接采集程序。
在一实施方式中,所述采集模块,具体用于通过所述外接采集程序实时采集所述目标应用程序的接口数据,并发送到消息组件如Kafka,以使所述消息组件对所述接口数据进行预设处理,包括基于所述接口数据的主题topic进行消息存放,生成处理后的接口数据。
在一实施方式中,在通过所述外接采集程序实时采集所述目标应用程序的接口数据时,可通过字节码增强的方式设置数据采集的轮询间隔。具体地,获取当前时间点与上一次对目标应用程序的接口数据进行采集的时间点之间的时间间隔,若所述时间间隔满足设置的接口数据的采集时间间隔,则对目标应用程序的接口数据进行采集;若不满足,则继续等待。这里,还可以根据实际需求直接对目标应用程序的接口数据进行采集,即不设置数据采集的轮询间隔。
在一实施方式中,所述监控模块,具体用于控制数据收集引擎根据所述消息组件中各处理后的接口数据的主题topic,通过消息组件如Kafka将所述处理后的接口数据以文件的形式发送到Elasticsearch系统进行存储,并基于所述Elasticsearch系统对所述处理后的接口数据信息进行监控。
在一实施方式中,所述监控装置,具体用于通过所述代理程序将对所述接口数据进行调用的记录信息存储至接口日志。
其中,对所述接口数据进行调用的记录信息可包括对所述接口数据进行采集、存储和监控等行为信息以及所述行为信息的对应时间信息。
响应于查询请求,在Elasticsearch系统存储的所述处理后的接口数据中搜索与所述查询请求相对应的目标接口数据,并对所述目标接口数据执行监控操作。
具体地,响应于查询请求,对所述目标接口数据的监控服务设置轮询时间间隔,以轮询的方式在Elasticsearch系统存储的所述处理后的接口数据中直接搜索与所述查询请求相对应的目标接口数据,并通过Elasticsearch系统的倒排索引快速进行模糊匹配以查找目标接口数据,进而对所述目标接口数据进行监测。其中,所述对所述目标接口数据进行监测,可包括:判断所述目标接口数据是否满足预设的数据异常条件,若所述目标接口数据满足预设的数据异常条件,则确定当前目标接口数据异常,并进行告警,发送给用户;若所述目标接口数据不满足所述预设的数据异常条件,则确定当前目标接口数据正常,并发送给用户。如此,通过在Elasticsearch系统存储的所述处理后的接口数据中直接搜索与所述查询请求相对应的目标接口数据并进行监控,实现对接口数据的快速检测,并及时向用户进行警示。
在一实施方式中,所述监控装置,具体用于根据所述查询请求配置指定响应码和关键字;通过监测在所述目标接口数据中所述指定响应码是否出现,或者所述关键字出现次数是否超过预设次数中的至少一种情况,判断所述目标接口数据是否异常,并进行相对应告警处理。
其中,所述接口数据异常可以是以下任意一种情况:在所述目标接口数据中出现所述指定响应码,以及在所述目标接口数据中所述关键字出现次数小于预设次数;在所述目标接口数据中没有出现所述指定响应码,以及在所述目标接口数据中所述关键字出现次数大于或等于预设次数;在所述目标接口数据中出现所述指定响应码,以及在所述目标接口数据中所述关键字出现次数大于或等于预设次数。
综上,上述实施例提供的应用程序接口数据的监控装置中,通过处理模块确定外接采集程序,通过采集模块基于所述外接采集程序采集应用程序的接口数据,最后通过监控模块对所述接口数据进行存储和监控。如此,降低了应用程序与容器云平台之间的耦合度,可方便将应用程序进行多平台部署。
基于前述实施例相同的发明构思,本发明实施例提供了一种应用程序接口数据的监控装置,如图6所示,该装置包括:处理器210和存储有计算机程序的存储器211;其中,图6中示意的处理器210并非用于指代处理器210的个数为一个,而是仅用于指代处理器210相对其他器件的位置关系,在实际应用中,处理器210的个数可以为一个或多个;同样,图6中示意的存储器211也是同样的含义,即仅用于指代存储器211相对其他器件的位置关系,在实际应用中,存储器211的个数可以为一个或多个。在所述处理器210运行所述计算机程序时,实现应用于上述装置的所述应用程序接口数据的监控方法。
该装置还可包括:至少一个网络接口212。该装置中的各个组件通过总线系统213耦合在一起。可理解,总线系统213用于实现这些组件之间的连接通信。总线系统213除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图6中将各种总线都标为总线系统213。
其中,存储器211可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random AccessMemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,SynchronousDynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储器211旨在包括但不限于这些和任意其它适合类型的存储器。
本发明实施例中的存储器211用于存储各种类型的数据以支持该装置的操作。这些数据的示例包括:用于在该装置上操作的任何计算机程序,如操作系统和应用程序;联系人数据;电话簿数据;消息;图片;视频等。其中,操作系统包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序可以包含各种应用程序,例如媒体播放器(Media Player)、浏览器(Browser)等,用于实现各种应用业务。这里,实现本发明实施例方法的程序可以包含在应用程序中。
基于前述实施例相同的发明构思,本实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,计算机可读存储介质可以是磁性随机存取存储器(FRAM,ferromagnetic random access memory)、只读存储器(ROM,Read OnlyMemory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、快闪存储器(FlashMemory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory)等存储器;也可以是包括上述存储器之一或任意组合的各种设备,如移动电话、计算机、平板设备、个人数字助理等。所述计算机可读存储介质中存储的计算机程序被处理器运行时,实现应用于上述装置的所述应用程序接口数据的监控方法。所述计算机程序被处理器执行时实现的具体步骤流程请参考图1所示实施例的描述,在此不再赘述。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,除了包含所列的那些要素,而且还可包含没有明确列出的其他要素。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种应用程序接口数据的监控方法,其特征在于,所述方法包括以下步骤:
将目标应用程序接入容器云,并在容器云中确定与所述目标应用程序对应的外接采集程序;
通过所述外接采集程序实时采集所述目标应用程序的接口数据,并发送到消息组件,以使所述消息组件对所述接口数据进行预设处理,生成处理后的接口数据;
控制数据收集引擎将所述处理后的接口数据发送到Elasticsearch系统进行存储,并基于所述Elasticsearch系统对所述处理后的接口数据进行监控。
2.根据权利要求1所述的方法,其特征在于,所述在容器云中确定与所述目标应用程序对应的外接采集程序,包括:
根据目标需求对初始的字节码进行功能添加,并将功能添加后的所述字节码发送到容器云的代理程序中;
控制所述代理程序基于所述字节码对初始的外接采集程序的功能进行更新,将更新后的外接采集程序确定为所述目标应用程序对应的外接采集程序。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过所述代理程序将对所述接口数据进行调用的记录信息存储至接口日志。
4.根据权利要求1所述的方法,其特征在于,所述基于所述Elasticsearch系统对所述处理后的接口数据进行监控,包括:
响应于查询请求,在Elasticsearch系统存储的所述处理后的接口数据中搜索与所述查询请求相对应的目标接口数据,并对所述目标接口数据执行监控操作。
5.根据权利要求4所述的方法,其特征在于,所述对所述目标接口数据执行监控操作,包括:
根据所述查询请求配置指定响应码和关键字;
通过监测在所述目标接口数据中所述指定响应码是否出现,或者所述关键字出现次数是否超过预设次数中的至少一种情况,判断所述目标接口数据是否异常,并进行相对应告警处理。
6.一种应用程序接口数据的监控装置,其特征在于,所述装置包括:
处理模块,用于将目标应用程序接入容器云,并在容器云中确定与所述目标应用程序对应的外接采集程序;
采集模块,用于通过所述外接采集程序实时采集所述目标应用程序的接口数据,并发送到消息组件,以使所述消息组件对所述接口数据进行预设处理,生成处理后的接口数据;
监控模块,用于控制数据收集引擎将所述处理后的接口数据发送到Elasticsearch系统进行存储,并基于所述Elasticsearch系统对所述处理后的接口数据进行监控。
7.根据权利要求6所述的装置,其特征在于,所述处理模块,具体用于:
根据目标需求对初始的字节码进行功能添加,并将功能添加后的所述字节码发送到容器云的代理程序中;
控制所述代理程序基于所述字节码对初始的外接采集程序的功能进行更新,将更新后的外接采集程序确定为所述目标应用程序对应的外接采集程序。
8.根据权利要求6所述的装置,其特征在于,所述监控模块,具体用于:
响应于查询请求,在Elasticsearch系统存储的所述处理后的接口数据中搜索与所述查询请求相对应的目标接口数据,并对所述目标接口数据执行监控操作。
9.一种电子设备,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序用于由所述处理器加载并执行如权利要求1~5中任意一项的应用程序接口数据的监控方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有指令,所述指令用于由处理器加载并执行如权利要求1~5中任意一项的应用程序接口数据的监控方法。
CN202310723038.0A 2023-06-16 2023-06-16 应用程序接口数据的监控方法、装置、设备及存储介质 Pending CN116719696A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310723038.0A CN116719696A (zh) 2023-06-16 2023-06-16 应用程序接口数据的监控方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310723038.0A CN116719696A (zh) 2023-06-16 2023-06-16 应用程序接口数据的监控方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN116719696A true CN116719696A (zh) 2023-09-08

Family

ID=87874899

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310723038.0A Pending CN116719696A (zh) 2023-06-16 2023-06-16 应用程序接口数据的监控方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN116719696A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112068932A (zh) * 2020-09-01 2020-12-11 北京指掌易科技有限公司 应用程序的集成、监控方法、装置、系统、设备及介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112068932A (zh) * 2020-09-01 2020-12-11 北京指掌易科技有限公司 应用程序的集成、监控方法、装置、系统、设备及介质

Similar Documents

Publication Publication Date Title
US9183072B1 (en) Error troubleshooting using a correlated knowledge base
KR101990598B1 (ko) 사용자 동작 행위에 기초하여 해결책을 추천하는 방법 및 장치
CN106878368B (zh) 信息推送的实现方法和装置
CN108038039B (zh) 记录日志的方法及微服务系统
CN116719696A (zh) 应用程序接口数据的监控方法、装置、设备及存储介质
CN112269762A (zh) 一种文件监控方法、装置、电子设备及存储介质
CN109472540B (zh) 业务处理方法和装置
CN114328029B (zh) 一种应用资源的备份方法、装置、电子设备及存储介质
CN110881224B (zh) 一种网络长连接方法、装置、设备及存储介质
CN114218410A (zh) 信息推荐方法、装置、电子设备及存储介质
CN116644250B (zh) 页面检测方法、装置、计算机设备和存储介质
CN111381745B (zh) 页面切换方法、装置、设备
CN110362305B (zh) 一种表单组件状态切换方法及装置
CN114416560A (zh) 程序崩溃分析聚合方法和系统
CN115858483A (zh) 日志分析与管理方法、终端及计算机可读存储介质
CN108509287B (zh) 请求状态管理方法、装置、电子设备及可读存储介质
US6591259B1 (en) Method and system for automating dependent entity actions in response to information change
CN117056030B (zh) 容器逃逸的确定方法及装置
CN115952491B (zh) hook目标函数的方法、装置、电子设备及介质
CN115828247B (zh) 一种小程序的异常检测方法、装置、设备及可读存储介质
CN113608828B (zh) 一种防护方法及其相关设备
CN112506740B (zh) 一种云报警方法、电子设备、存储介质及云报警装置
CN115955506A (zh) 微服务发布方法、装置、系统及计算机可读存储介质
CN114296730A (zh) 页面信息处理方法、装置及电子设备
CN116737464A (zh) 备份失效处置方法、装置、设备、介质和程序产品

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination