微服务系统监控方法、装置、电子设备及计算机可读介质转让专利

申请号 : CN201910712338.2

文献号 : CN110324209B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张杰

申请人 : 泰康保险集团股份有限公司

摘要 :

本公开涉及一种微服务系统监控方法、装置、电子设备及计算机可读介质。所述微服务系统包含多个微服务单元,该方法包括:基于所述微服务单元确定监控归档文件及其对应的监控配置文件;将所述监控归档文件加载到所述微服务单元的工程中;进行所述微服务单元的初始化以使得所述监控归档文件加载所述监控配置文件;以及在加载完毕后所述微服务系统通过指定的监控应用程序监控所述微服务单元。本公开涉及的微服务系统监控方法、装置、电子设备及计算机可读介质,能够使得微服务系统可以高效快捷的对未在注册中心进行注册的微服务单元进行监控。

权利要求 :

1.一种微服务系统监控方法,所述微服务系统包含多个微服务单元,其特征在于,包括:基于所述微服务单元确定监控归档文件及其对应的监控配置文件;

将所述监控归档文件加载到所述微服务系统的工程中;

进行所述微服务系统的初始化以使得所述监控归档文件加载所述监控配置文件;以及在加载完毕后所述微服务系统通过指定的监控应用程序监控所述微服务单元。

2.如权利要求1所述的方法,其特征在于,基于所述微服务单元确定监控归档文件及其对应的监控配置文件包括:根据所述微服务单元的监控协议确定所述监控归档文件及对应的监控配置文件。

3.如权利要求2所述的方法,其特征在于,基于所述微服务单元确定监控归档文件及其对应的监控配置文还包括:将所述监控归档文件存储在所述微服务系统的系统文件夹中;和/或将所述监控配置文件存储在所述微服务系统的资源文件夹中。

4.如权利要求1所述的方法,其特征在于,进行所述微服务系统的初始化以使得所述监控归档文件加载所述监控配置文件包括:根据用户指令进行所述微服务系统的初始化;

在初始化过程中解析所述监控配置文件;以及所述监控归档文件加载解析后的所述监控配置文件。

5.如权利要求1所述的方法,其特征在于,在加载完毕后所述微服务系统通过指定的监控应用程序监控所述微服务单元包括:所述微服务系统中指定的监控应用程序程通过指定接口接受来自所述微服务单元的监控信息。

6.如权利要求1所述的方法,其特征在于,还包括通过所述监控配置文件获取报警阈值;以及所述微服务系统基于所述报警阈值对所述微服务单元进行监控。

7.如权利要求1所述的方法,其特征在于,还包括:获取修改后的监控配置文件;以及

将所述微服务系统进行初始化以在所述微服务系统中更新所述监控配置文件。

8.一种微服务系统监控装置,所述微服务系统包含多个微服务单元,其特征在于,包括:文件模块,用于基于所述微服务单元确定监控归档文件及其对应的监控配置文件;

加载模块,用于将所述监控归档文件加载到所述微服务单元的工程中;

初始化模块,用于进行所述微服务单元的初始化以使得所述监控归档文件加载所述监控配置文件;以及监控模块,用于在加载完毕后所述微服务系统通过指定的监控应用程序监控所述微服务单元。

9.一种电子设备,其特征在于,包括:一个或多个处理器;

存储装置,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的方法。

10.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-7中任一所述的方法。

说明书 :

微服务系统监控方法、装置、电子设备及计算机可读介质

技术领域

[0001] 本公开涉及计算机信息处理领域,具体而言,涉及一种微服务系统监控方法、装置、电子设备及计算机可读介质。

背景技术

[0002] 随着互联网的快速发展,企业集团内部的系统越来越多,业务越来越复杂。单一的系统没法完成公司的业务需求。需要各个系统间相互调用来完成业务的实现。现在流行的分布式服务治理框架为微服务系统框架,具体可例如为Spring Cloud框架。在Spring Cloud框架中,企业集团中不同的业务科分别作为微服务单元进行统一管理,不同的微服务单元之间的信息通过接口传输信息。目前,在Spring Cloud框架中所有系统的监控信息都是通过一个Spring Boot Admin系统进行统一监控管理。
[0003] 因为Spring Boot admin监控系统是只能监控到在微服务系统的注册中注册过的微服务单元,没有连接注册中心的微服务单元就不能监控,这样就导致了在企业集团内部的多个微服务单元中,很可能只有一部分被注册过的微服务单元被监控了,没有注册过的微服务单元并没有得到监控。这种情况导致了每次新的微服务单元上线都要手工调用程序去确定没被监控的其他微服务单元是否正常工作,开发人员的工作量加大了很多。
[0004] 这种纳入注册中心的微服务单元通过Spring Boot admin去查看连接的健康状况,没有纳入注册中心的微服务单元需要手工去查看的情况存在很大的缺陷。因此,需要一种新的微服务系统监控方法、装置、电子设备及计算机可读介质。
[0005] 在所述背景技术部分公开的上述信息仅用于加强对本公开的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。

发明内容

[0006] 有鉴于此,本公开提供一种微服务系统监控方法、装置、电子设备及计算机可读介质,能够使得微服务系统可以高效快捷的对未在注册中心进行注册的微服务单元进行监控。
[0007] 本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
[0008] 根据本公开的一方面,提出一种微服务系统监控方法,所述微服务系统包含多个微服务单元,该方法包括:基于所述微服务单元确定监控归档文件及其对应的监控配置文件;将所述监控归档文件加载到所述微服务系统的工程中;进行所述微服务系统的初始化以使得所述监控归档文件加载所述监控配置文件;以及在加载完毕后所述微服务系统通过指定的监控应用程序监控所述微服务单元。
[0009] 在一个实施例中,基于所述微服务单元确定监控归档文件及其对应的监控配置文件包括:根据所述微服务单元的监控协议确定所述监控归档文件及对应的监控配置文件;所述监控协议包括:HTTP、TELNET、SSH、FTP、SFTP。
[0010] 在一个实施例中,基于所述微服务单元确定监控归档文件及其对应的监控配置文还包括:将所述监控归档文件存储在所述微服务系统的系统文件夹中;和/或将所述监控配置文件存储在所述微服务系统的资源文件夹中。
[0011] 在一个实施例中,将所述监控归档文件加载到所述微服务系统的工程中包括:通过修管理描述文件将所述监控归档文件加载到所述微服务系统的工程中。
[0012] 在一个实施例中,进行所述微服务系统的初始化以使得所述监控归档文件加载所述监控配置文件包括:根据用户指令进行所述微服务系统的初始化;在初始化过程中解析所述监控配置文件;以及所述监控归档文件加载解析后的所述监控配置文件。
[0013] 在一个实施例中,所述监控归档文件加载解析后的所述监控配置文件包括:由解析后的所述监控配置文件中获取目标协议、目标地址、目标端口;以及所述监控文档文件中的类文件通过所述目标协议实现对目标地址的目标端口的调用。
[0014] 在一个实施例中,在加载完毕后所述微服务系统通过指定的监控应用程序监控所述微服务单元包括:所述微服务系统中指定的监控应用程序程通过指定接口接受来自所述微服务单元的监控信息。
[0015] 在一个实施例中,所述微服务系统中指定的监控应用程序通过指定接口接受来自所述微服务单元的监控信息包括:Spring Boot admin应用程序通过继承healthindicator接口类的方式监控所述微服务单元。
[0016] 在一个实施例中,还包括:通过所述监控配置文件获取报警阈值;以及所述微服务系统基于所述报警阈值对所述微服务单元进行监控。
[0017] 在一个实施例中,还包括:获取修改后的监控配置文件;以及将所述微服务单元进行初始化以在所述微服务系统中更新所述监控配置文件。
[0018] 根据本公开的一方面,提出一种微服务系统监控装置,所述微服务系统包含多个微服务单元,该装置包括:文件模块,用于基于所述微服务单元确定监控归档文件及其对应的监控配置文件;加载模块,用于将所述监控归档文件加载到所述微服务单元的工程中;初始化模块,用于进行所述微服务单元的初始化以使得所述监控归档文件加载所述监控配置文件;以及监控模块,用于在加载完毕后所述微服务系统通过指定的监控应用程序监控所述微服务单元。
[0019] 根据本公开的一方面,提出一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上文的方法。
[0020] 根据本公开的一方面,提出一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上文中的方法。
[0021] 根据本公开的微服务系统监控方法、装置、电子设备及计算机可读介质,通过监控归档文件及其对应的监控配置文件将没纳入注册中心的微服务单元进行监控的方式,能够使得微服务系统可以高效快捷的对未在注册中心进行注册的微服务单元进行监控。
[0022] 应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。

附图说明

[0023] 通过参照附图详细描述其示例实施例,本公开的上述和其它目标、特征及优点将变得更加显而易见。下面描述的附图仅仅是本公开的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0024] 图1是根据一示例性实施例示出的一种微服务系统监控方法及装置的系统场景框图。
[0025] 图2是根据一示例性实施例示出的一种微服务系统监控方法的流程图。
[0026] 图3是根据另一示例性实施例示出的一种微服务系统监控方法的流程图。
[0027] 图4是根据另一示例性实施例示出的一种微服务系统监控方法的示意图。
[0028] 图5是根据一示例性实施例示出的一种微服务系统监控装置的框图。
[0029] 图6是根据一示例性实施例示出的一种电子设备的框图。
[0030] 图7是根据一示例性实施例示出一种计算机可读存储介质示意图。

具体实施方式

[0031] 现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本公开将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
[0032] 此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
[0033] 附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
[0034] 附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
[0035] 应理解,虽然本文中可能使用术语第一、第二、第三等来描述各种组件,但这些组件不应受这些术语限制。这些术语乃用以区分一组件与另一组件。因此,下文论述的第一组件可称为第二组件而不偏离本公开概念的教示。如本文中所使用,术语“及/或”包括相关联的列出项目中的任一个及一或多者的所有组合。
[0036] 本领域技术人员可以理解,附图只是示例实施例的示意图,附图中的模块或流程并不一定是实施本公开所必须的,因此不能用于限制本公开的保护范围。
[0037] 图1是根据一示例性实施例示出的一种微服务系统监控方法及装置的系统框图。
[0038] 如图1所示,系统架构100可以包括微服务单元服务器101、102、103,网络104和微服务系统微服务系统服务器105。网络104用以在服务单元服务器101、102、103和微服务系统微服务系统服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
[0039] 用户可以使用微服务单元服务器101、102、103通过网络104与微服务系统服务器105交互,以接收或发送消息等。微服务单元服务器101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端等。
[0040] 微服务单元服务器101、102、103可以是提供各种服务的服务器,例如对用户提供的查询数据提供支持的后台服务器。微服务单元服务器101(或102、103)可以对接收到的查询数据进行分析等处理,在分析处理过程中,微服务单元服务器101还可例如通过微服务系统服务器105与微服务单元服务器102或103进行数据交换以生成用户响应数据,并将用户响应数据反馈给用户。
[0041] 微服务系统服务器105可以是为微服务单元服务器101、102、103提供各种服务的服务器,例如为微服务单元服务器101、102、103之间提供数据支持的后台服务器;微服务系统服务器105还可例如对微服务单元服务器101、102、103进行数据监控与安全支撑。
[0042] 微服务的软件架构是一个包含各种组织的系统组织,这些组件包括Web服务器,应用服务器,数据库,存储,通讯层,它们彼此或和环境存在关系。系统架构的目标是解决利益相关者的关注点。在微服务系统中,不同的微服务之间可通过统一的程序或平台进行调用,在微服务系统服务器105对微服务单元服务器101、102、103进行监控之前可进行如下操作,其中微服务系统服务器105简称为微服务系统105,微服务单元服务器101、102、103简称为微服务单元101、102、103:
[0043] 基于微服务单元101(或102、103)确定监控归档文件及其对应的监控配置文件;将所述监控归档文件加载到微服务系统105的工程中;进行微服务系统105的初始化以使得所述监控归档文件加载所述监控配置文件;以及在加载完毕后微服务系统105通过指定的监控应用程序监控微服务单元101。
[0044] 微服务系统服务器105还可例如通过所述监控配置文件获取报警阈值;以及微服务系统105基于所述报警阈值对微服务单元101进行监控。
[0045] 在微服务单元101的配置文件修改之后,获取修改后的监控配置文件;以及将微服务单元101进行初始化以在微服务系统105中更新所述监控配置文件。
[0046] 微服务系统服务器105与微服务单元服务器101、102、103均可以是一个实体的服务器,还可例如为多个服务器组成,需要说明的是,本公开实施例所提供微服务系统监控方法可以由微服务系统服务器105和/或微服务单元服务器101、102、103执行,相应地,微服务系统监控装置可以设置于微服务系统服务器105和/或微服务单元服务器101、102、103中。而提供给用户进行查询请求输入或其他请求输入的请求端一般位于微服务单元服务器
101、102、103中。
[0047] 根据本公开的微服务系统监控方法及装置,通过监控归档文件及其对应的监控配置文件将没纳入注册中心的微服务单元进行监控的方式,能够使得微服务系统可以高效快捷的对未在注册中心进行注册的微服务单元进行监控。
[0048] 图2是根据一示例性实施例示出的一种微服务系统监控方法的流程图。微服务系统监控方法20至少包括步骤S202至S208。
[0049] 如图2所示,在S202中,基于所述微服务单元确定监控归档文件及其对应的监控配置文件。
[0050] 在一个实施例中,可根据所述微服务单元的监控协议确定所述监控归档文件及对应的监控配置文件;所述监控协议包括:HTTP、TELNET、SSH、FTP、SFTP。
[0051] 其中,HTTP协议(HyperText Transfer Protocol,超文本传输协议)是因特网上应用最为广泛的一种网络传输协议,所有的WWW文件都必须遵守这个标准。HTTP是一个基于TCP/IP通信协议来传递数据(HTML文件,图片文件,查询结果等)。
[0052] Telnet协议(远程终端协议)是TCP/IP协议族中的一员,是Internet远程登录服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。在终端使用者的电脑上使用telnet程序,用它连接到服务器。终端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能控制服务器。Telnet是常用的远程控制Web服务器的方法。
[0053] SSH协议(Secure Shell,安全外壳协议)为建立在应用层基础上的安全协议。SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。
[0054] ftp协议(File Transfer Protocol,文件传输协议)是用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式。它属于网络传输协议的应用层。
[0055] sftp协议(Secure File Transfer Protocol,安全文件传送协议)可以为传输文件提供一种安全的网络的加密方法。sftp与ftp有着几乎一样的语法和功能。SFTP为SSH的其中一部分,是一种传输档案至Blogger伺服器的安全方式。SFTP同样是使用加密传输认证信息和传输的数据,所以,使用SFTP是非常安全的。但是,由于这种传输方式使用了加密/解密技术,所以传输效率比普通的FTP要低得多。
[0056] 在一个实施例中,基于所述微服务单元确定监控归档文件及其对应的监控配置文还包括:将所述监控归档文件存储在所述微服务系统的系统文件夹中;和/或将所述监控配置文件存储在所述微服务系统的资源(RESOURCE)文件夹中。
[0057] 可例如,微服务系统A需要对微服务单元B与微服务单元C进行监控,如果要对微服务单元B与微服务单元C进行监控的话,可在微服务系统A中增加监控归档文件JAR包(TK_MONITOR.JAR)。微服务系统A中的RESOURCE文件夹中增加监控配置文件TK_MONITOR.XML。
[0058] 在S204中,将所述监控归档文件加载到所述微服务单元的工程中。可例如通过修改管理描述文件将所述监控归档文件加载到所述微服务系统的工程中。
[0059] 其中,管理描述文件为POM文件,POM代表项目对象模型。它是Maven中工作的基本单位,是一个XML文件。它始终保存在该项目基本目录中中。POM文件包含各种配置信息。POM也包含了目标和插件。在执行任务或目标时,Maven会使用当前目录中POM,通过读取POM得到所需要的配置信息,然后执行目标。
[0060] 在S206中,进行所述微服务单元的初始化以使得所述监控归档文件加载所述监控配置文件。
[0061] 在一个实施例中,进行所述微服务系统的初始化以使得所述监控归档文件加载所述监控配置文件包括:根据用户指令进行所述微服务系统的初始化;在初始化过程中解析所述监控配置文件;以及所述监控归档文件加载解析后的所述监控配置文件。
[0062] 其中,所述监控归档文件加载解析后的所述监控配置文件包括:由解析后的所述监控配置文件中获取目标协议、目标地址、目标端口;以及所述监控文档文件中的类文件通过所述目标协议实现对目标地址的目标端口的调用。
[0063] 在S208中,在加载完毕后所述微服务系统通过指定的监控应用程序监控所述微服务单元。可例如,所述微服务系统中指定的监控应用程序程通过指定接口接受来自所述微服务单元的监控信息。
[0064] 在一个实施例中,具体可例如:Spring  Boot admin应用程序通过继承healthindicator接口类的方式监控微服务单元。其中,Spring Boot Admin是一个管理和监控微服务系统中的Spring Boot应用程序的应用程序。这些应用程序通过Spring Boot Admin Client(通过HTTP)注册或者使用Spring Cloud(例如Eureka)发现。
[0065] Spring Boot Admin用于监控基于Spring Boot的应用,它是在Spring Boot Actuator的基础上提供简洁的可视化网络可视化服务。在Spring Boot项目中,Spring Boot Admin作为Server端,其他的要被监控的应用作为Client端。
[0066] 在一个实施例中,监控归档文件中有实现healthindicator相关的类,Spring Boot admin系统会监控实现了该接口的类,通过这个类可以把微服务单元上的监控信息发送到Spring Boot admin系统界面上。在Spring Cloud体系中,Spring框架给开发人员提供了一个接口,接口类healthindicator,开发人员可以通过继承这个接口类实现自己的健康信息监控。通过继承这个接口,可以把所有的系统纳入Spring Boot admin的监控中。
[0067] 在一个实施例中,该方法还包括:通过所述监控配置文件获取报警阈值;以及所述微服务系统基于所述报警阈值对所述微服务单元进行监控。具体可例如,在监控配置文件中用TRIES表示重试次数,REF表示监控成功或者异常进行的操作。通过TRIES标签可以设置所监控系统的阈值。
[0068] 因为在系统中需要额外监控的系统有很多,不能每个监控都要写一个healthindicator实现类来实现健康监控,本公开的方法中,通过一个配置类来配置所有需要监控的服务来进行监控,能够通过自定义的方式,将企业集团内容微服务单元纳入Spring Cloud监控体系中。
[0069] 应清楚地理解,本公开描述了如何形成和使用特定示例,但本公开的原理不限于这些示例的任何细节。相反,基于本公开公开的内容的教导,这些原理能够应用于许多其它实施例。
[0070] 图3是根据另一示例性实施例示出的一种微服务系统监控方法的流程图。图3所示的流程30是对图2所示的流程中S206“进行所述微服务单元的初始化以使得所述监控归档文件加载所述监控配置文件”的详细描述,
[0071] 如图3所示,在S302中,根据用户指令进行所述微服务系统的初始化。其中,在系统配置自定义监控的时候可增加两个文件,分别为:TK_MONITOR.JAR和TK_MONITOR.XML。如果监控的协议是SSH/FTP/SFTP协议的时候需要额外增加对应的协议JAR文件到工程中。
[0072] 在S304中,在初始化过程中解析所述监控配置文件。在一个实施例中,监控配置文件可分成两部分,如下:
[0073] 第一层为:
[0074] 该层是保存所有监控系统的基本信息,具体可为:一个SERVICES对应多个SERVICE,一个SERVICE对应多个INSTANCE。
[0075] 这个标签表示一个需要接入监控的工程的基本信息,NAME表示姓名。
[0076] 这个标签表示该工程需要监控的实例。
[0077] IP表示这台服务器需要监控的IP地址,PORT代表需要连接的端口,TYPE表示监控方式。TRIES表示重试次数,REF表示监控成功或者异常进行的操作。
[0078] 通过TRIES标签可以设置所监控系统的阈值。
[0079] 现在支持的TYPE监控方式包括五种,HTTP、TELNET、SSH、FTP、SFTP。
[0080] REF包括两类,当为NORMAL时候系统发送系统默认的信息,包括文件中的配置项(IP PORT TYPE),当系统默认信息不满足要求的时候可以通过标签来自定义监控操作。
[0081] 第二层为:
[0082] 每个标签表示一种自定义的监控操作,NAME表示该操作的名称,CLASS表示该操作对应的类。
[0083] 在标签中可以通过REF字段来设置具体的监控操作。REF里面的值为BEAN标签中NAME的值。
[0084] 在S306中,由解析后的所述监控配置文件中获取目标协议、目标地址、目标端口。其中,TK_MONITOR.JAR需要加载到工程中,通过修改POM文件把该JAR包加载到系统中。
[0085] TK_MONITOR.XML文件可以通过XML相关JAR包解析。通过TYPE便签可以判断出该服务需要何种协议监控。可例如,通过解析可知SERVICE名为“TKJY”的服务。IP为127.0.0.1、80端口的服务需要通过TELNET协议来调用。这时候TK_MONITOR.JAR中对应的类来通过TELNET协议调用相关接口监控系统。
[0086] 在S308中,所述监控文档文件中的类文件通过所述目标协议实现对目标地址的目标端口的调用。
[0087] 其中,配置文件为:TK_MONITOR.XML,TK_MONITOR.XML是通过TK_MONITOR.JAR中对应文件加载的,加载的内容会放在JVM中。
[0088] 配置文件的路径为:工程中的SRC/RESOURCES文件夹中。
[0089] 在系统初始化的过程中TK_MONITOR.JAR中会加载RESOURCES文件夹中的TK_MONITOR.XML文件;启动完毕后TK_MONITOR.XML配置的监控就会纳入到SPRINGCLOUD监控体系中。
[0090] 因为在TK_MONITOR.JAR中有实现healthindicator相关的类,Spring Boot admin系统会监控实现了该接口的类,通过这个类可以把监控信息发送到SPRINGBOOTADMIN系统界面上。
[0091] 其中,如果修改了TK_MONITOR.XML相关的配置文件需要重启系统来重新解析XML配置文件。这个动作是在系统启动时候完成。启动完毕后才会把新的系统加载到监控中。
[0092] 图4是根据另一示例性实施例示出的一种微服务系统监控方法的示意图。如图4所示,假如某集团公司中投保平台系统要上线程序,和他相关联的系统有4个,分别如下:
[0093] 短信中心系统,已经纳入注册中心管理
[0094] 规则引擎系统,已经纳入注册中心管理
[0095] 家园管理系统,未纳入注册中心管理
[0096] 医生系统,未纳入注册中心管理
[0097] 目前,投保平台程序上线后可以通过监控平台看到短信中心系统、规则引擎系统两个系统的使用情况,家园管理系统和医生系统需要开发人员手工去调用程序判断连接是否正确。
[0098] 如果要把家园系统、医生系统纳入Spring Boot admin监控管理需要在投保平台系统中增加监控JAR包(TK_MONITOR.JAR)。在投保平台RESOURCE文件夹中增加配置文件TK_MONITOR.XML。
[0099] 其中,家园、医生系统信息如下:
[0100]系统名 IP 端口 连接方式
家园 10.127.9.1 21 SSH
家园 10.127.9.1 22 FTP
医生 10.127.9.2 23 SFTP
医生 10.127.9.2 8080 HTTP
[0101] 在一个实施例中,如果需要医生系统采用自定义的监控报警操作,自定义的类为TK_OPERATOR.JAVA。可通过以上的信息对TK_MONITOR.XML进行配置。
[0102] 在一个实施例中,XML文件解析的程序需要打成一个JAR包,每个需要接入该功能的系统需要引入这个JAR包,XML文件需要设置成配置文件的形式放在各个系统当中。
[0103] 根据本公开的微服务系统监控方法,解决了不同系统需要通过不同的方式对系统健康度检查的问题;通过配置文件可以简单接入没纳入注册中心的系统,对系统零侵入;使得整个微服务系统的系统上线、监控更加方便。
[0104] 本领域技术人员可以理解实现上述实施例的全部或部分步骤被实现为由CPU执行的计算机程序。在该计算机程序被CPU执行时,执行本公开提供的上述方法所限定的上述功能。所述的程序可以存储于一种计算机可读存储介质中,该存储介质可以是只读存储器,磁盘或光盘等。
[0105] 此外,需要注意的是,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
[0106] 下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开方法实施例。
[0107] 图5是根据一示例性实施例示出的一种微服务系统监控装置的框图。如图5所示,微服务系统监控装置50包括:文件模块502,加载模块504,初始化模块506,监控模块508。
[0108] 文件模块502用于基于所述微服务单元确定监控归档文件及其对应的监控配置文件;其中,还可根据所述微服务单元的监控协议确定所述监控归档文件及对应的监控配置文件;所述监控协议包括:HTTP、TELNET、SSH、FTP、SFTP。
[0109] 加载模块504用于将所述监控归档文件加载到所述微服务单元的工程中;可例如通过修改管理描述文件将所述监控归档文件加载到所述微服务系统的工程中。
[0110] 初始化模块506用于进行所述微服务单元的初始化以使得所述监控归档文件加载所述监控配置文件;
[0111] 在一个实施例中,进行所述微服务系统的初始化以使得所述监控归档文件加载所述监控配置文件包括:根据用户指令进行所述微服务系统的初始化;在初始化过程中解析所述监控配置文件;以及所述监控归档文件加载解析后的所述监控配置文件。
[0112] 监控模块508用于在加载完毕后所述微服务系统通过指定的监控应用程序监控所述微服务单元。可例如,所述微服务系统中指定的监控应用程序程通过指定接口接受来自所述微服务单元的监控信息。
[0113] 在一个实施例中,具体可例如:Spring  Boot admin应用程序通过继承healthindicator接口类的方式监控所述微服务单元。
[0114] 根据本公开的微服务系统监控装置,通过监控归档文件及其对应的监控配置文件将没纳入注册中心的微服务单元进行监控的方式,能够使得微服务系统可以高效快捷的对未在注册中心进行注册的微服务单元进行监控。
[0115] 图6是根据一示例性实施例示出的一种电子设备的框图。
[0116] 下面参照图6来描述根据本公开的这种实施方式的电子设备200。图6显示的电子设备200仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0117] 如图6所示,电子设备200以通用计算设备的形式表现。电子设备200的组件可以包括但不限于:至少一个处理单元210、至少一个存储单元220、连接不同系统组件(包括存储单元220和处理单元210)的总线230、显示单元240等。
[0118] 其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元210执行,使得所述处理单元210执行本说明书上述电子处方流转处理方法部分中描述的根据本公开各种示例性实施方式的步骤。例如,所述处理单元210可以执行如图2,图3中所示的步骤。
[0119] 所述存储单元220可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)2201和/或高速缓存存储单元2202,还可以进一步包括只读存储单元(ROM)2203。
[0120] 所述存储单元220还可以包括具有一组(至少一个)程序模块2205的程序/实用工具2204,这样的程序模块2205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
[0121] 总线230可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
[0122] 电子设备200也可以与一个或多个外部设备300(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备200交互的设备通信,和/或与使得该电子设备200能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口250进行。并且,电子设备200还可以通过网络适配器260与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器260可以通过总线230与电子设备200的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
[0123] 通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本公开实施方式的上述方法。
[0124] 图7示意性示出本公开示例性实施例中一种计算机可读存储介质示意图。
[0125] 参考图7所示,描述了根据本公开的实施方式的用于实现上述方法的程序产品400,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本公开的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0126] 所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0127] 所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
[0128] 可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0129] 上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该计算机可读介质实现如下功能:基于所述微服务单元确定监控归档文件及其对应的监控配置文件;将所述监控归档文件加载到所述微服务单元的工程中;进行所述微服务单元的初始化以使得所述监控归档文件加载所述监控配置文件;以及在加载完毕后所述微服务系统通过指定的监控应用程序监控所述微服务单元。
[0130] 本领域技术人员可以理解上述各模块可以按照实施例的描述分布于装置中,也可以进行相应变化唯一不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
[0131] 通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施例的方法。
[0132] 以上具体地示出和描述了本公开的示例性实施例。应可理解的是,本公开不限于这里描述的详细结构、设置方式或实现方法;相反,本公开意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。
[0133] 此外,本说明书说明书附图所示出的结构、比例、大小等,均仅用以配合说明书所公开的内容,以供本领域技术人员了解与阅读,并非用以限定本公开可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本公开所能产生的技术效果及所能实现的目的下,均应仍落在本公开所公开的技术内容得能涵盖的范围内。同时,本说明书中所引用的如“上”、“第一”、“第二”及“一”等的用语,也仅为便于叙述的明了,而非用以限定本公开可实施的范围,其相对关系的改变或调整,在无实质变更技术内容下,当也视为本公开可实施的范畴。