CN103107921A - 监控方法和系统 - Google Patents
监控方法和系统 Download PDFInfo
- Publication number
- CN103107921A CN103107921A CN 201310042614 CN201310042614A CN103107921A CN 103107921 A CN103107921 A CN 103107921A CN 201310042614 CN201310042614 CN 201310042614 CN 201310042614 A CN201310042614 A CN 201310042614A CN 103107921 A CN103107921 A CN 103107921A
- Authority
- CN
- China
- Prior art keywords
- monitored
- platform
- client
- service
- monitor
- 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.)
- Granted
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明提供了一种监控方法和系统,其中,监控方法包括:被监控平台通过监控服务接收客户端监控指令,其中,所述客户端监控指令由客户端通过远程调用接口向所述被监控平台发送;所述监控服务根据所述客户端监控指令,调用所述被监控平台中对应的操作指令对所述被监控平台中的被监控对象进行监控,并向所述客户端返回监控结果;其中,所述监控服务和所述被监控对象分别单独设置。通过本发明,降低了客户端和被监控平台对环境的依赖性,有效提高了监控性能,实现了对被监控对象如应用服务的单独维护。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种UNIX或LINUX内核平台下基于JAVA技术的监控方法和系统。
背景技术
目前,许多行业领域的信息应用服务都以UNIX或LINUX内核的操作系统为运行平台如以Solaris为运行平台。在这些运行平台的日常运行维护工作中,对于运行服务的各种监控非常重要,而在Solaris平台环境下,对于应用服务的维护尤为重要。
Solaris平台环境下,对于应用服务的系统监控,目前多采用基于JAVA技术的系统监控,其在应用实现上主要采用JMX(Java ManagementExtensions,Java管理扩展)和Telnet两种方式。
其中,JMX是一种为管理和监控诸如应用程序、设备、服务和JAVA虚拟机等资源而提供的标准应用程序接口。使用JMX策略进行系统监控时,依赖于应用服务系统,如图1所示,在被监控的Solaris运行环境下,把应用服务的每项监控服务注册为JMX服务,客户端通过远程调用JMX代理进行监控,而监控服务功能则根据应用服务和Solaris平台相关的操作逻辑来实现。
Telnet允许远程用户登陆到一台计算机并运行程序,支持多种TCP/IPTelnet客户,包括基于UNIX和Window的计算机的Telnet客户。Telnet支持远程操作,使用Telnet策略进行系统监控时,如图2所示,其通过Telnet方式,利用Solaris操作系统相关的命令来对运行的应用服务进行监控,客户端通过Telnet对Solaris上的应用服务执行监控命令。
但是,一方面,JMX与Telnet对环境依赖性强,要求平台必须支持JMX或Telnet,使用JMX和Telnet等连接访问技术执行数据采集,这种对环境的依赖不仅使得监控方案不具备通用性,而且环境对系统监控的性能影响直接明显,造成监控性能低下;另一方面,系统监控功能不独立,现有的监控方案中,系统监控和应用服务耦合设置,如果要对应用服务进行维护则必须同时停止系统监控和应用服务,而不能对应用服务进行单独维护,不能满足客户通过系统监控对应用服务启动,停止和重启等操作。
发明内容
本发明提供了一种监控方法和系统,以解决现有被监控平台对环境依赖性强,监控性能低下,系统监控功能不独立的问题。
为了解决上述问题,本发明公开了一种监控方法,包括:被监控平台通过监控服务接收客户端监控指令,其中,所述客户端监控指令由客户端通过远程调用接口向所述被监控平台发送;所述监控服务根据所述客户端监控指令,调用所述被监控平台中对应的操作指令对所述被监控平台中的被监控对象进行监控,并向所述客户端返回监控结果;其中,所述监控服务和所述被监控对象分别单独设置。
优选地,所述被监控平台包括多个,所述多个被监控平台中的一个或多个平台中设置有监控代理服务;在所述被监控平台通过监控服务接收客户端通过远程调用接口发送的客户端监控指令的步骤之前,还包括:从设置有所述监控代理服务的被监控平台中选择一个被监控平台;选择的所述被监控平台上的监控代理服务接收所述客户端通过所述远程调用接口发送的获取请求,所述获取请求用于请求获取所述多个被监控平台的信息和/或所述多个被监控平台中的被监控对象的信息;根据所述获取请求获取所述多个被监控平台的信息和/或所述多个被监控平台中的被监控对象的信息,并返回给所述客户端,供所述客户端选择所述被监控平台和/或所述被监控对象进行监控。
优选地,所述根据所述获取请求获取所述多个被监控平台的信息和/或所述多个被监控平台中的被监控对象的信息,并返回给所述客户端的步骤包括:所述监控代理服务根据所述获取请求,使用JAVA数据库操作指令连接和访问监控信息数据库,从所述监控信息数据库获取所述多个被监控平台的信息和/或所述多个被监控平台中的被监控对象的信息,并发送给所述客户端。
优选地,当所述被监控平台仅有一个时,所述被监控平台中设置有监控代理服务;在所述被监控平台通过监控服务接收客户端通过远程调用接口发送的客户端监控指令的步骤之前,还包括:所述被监控平台上的监控代理服务接收所述客户端通过所述远程调用接口发送的获取请求,所述获取请求用于请求获取所述被监控平台中的被监控对象的信息;根据所述获取请求获取所述被监控平台中的被监控对象的信息,并返回给所述客户端,供所述客户端选择所述被监控对象进行监控。
优选地,所述监控服务和所述监控代理服务合并设置。
优选地,所述监控服务根据所述客户端监控指令,调用所述被监控平台中对应的操作指令对所述被监控平台中的被监控对象进行监控的步骤包括:所述监控服务根据所述客户端监控指令,调用所述被监控平台中对应的操作指令,使用多线程对所述被监控平台中的被监控对象进行监控。
优选地,在所述被监控平台通过监控服务接收客户端通过远程调用接口发送的客户端监控指令的步骤之前,还包括:所述客户端通过JAVA远程调用的调用接口远程调用所述被监控平台,向所述被监控平台发送所述客户端监控指令,其中,所述被监控平台使用基于UNIX或LINUX的操作系统内核。
优选地,所述客户端通过JAVA远程调用的调用接口远程调用所述被监控平台,向所述被监控平台发送所述客户端监控指令的步骤包括:所述客户端接收用户通过监控操作界面输入的操作,根据所述操作使用JAVA远程调用的调用接口远程调用所述被监控平台,向所述被监控平台发送所述客户端监控指令。
优选地,所述监控方法还包括:所述被监控平台通过所述监控服务接收所述客户端通过所述远程调用接口发送的配置指令;根据所述配置指令对所述被监控平台中的被监控对象进行动态配置。
为了解决上述问题,本发明还公开了一种监控系统,包括被监控平台,所述被监控平台包括:接收模块,用于通过监控服务接收客户端监控指令,其中,所述客户端监控指令由客户端通过远程调用接口向所述被监控平台发送;监控模块,用于由所述监控服务根据所述客户端监控指令,调用所述被监控平台中对应的操作指令对所述被监控平台中的被监控对象进行监控,并向所述客户端返回监控结果;其中,所述监控服务和所述被监控对象分别单独设置。
优选地,所述监控系统包括多个所述被监控平台;每个所述被监控平台还包括:监控代理模块,用于在所述接收模块通过监控服务接收客户端通过远程调用接口发送的客户端监控指令之前,接收所述客户端通过所述远程调用接口发送的获取请求,所述获取请求用于请求获取所述多个被监控平台的信息和/或所述多个被监控平台中的被监控对象的信息;根据所述获取请求获取所述多个被监控平台的信息和/或所述多个被监控平台中的被监控对象的信息,并返回给所述客户端,供所述客户端选择所述被监控平台和/或所述被监控对象进行监控。
与现有技术相比,本发明具有以下优点:
本发明的被监控平台通过设置的监控服务,接收客户端的远程调用发送的监控指令,被监控平台在接收到该监控指令后调用平台本身相对应的操作指令进行监控操作,并返回监控结果。通过本发明,客户端无需考虑被监控平台的情况,被监控平台会自动根据客户端的监控指令调用本系统对应的指令进行操作,从而大大降低了客户端和被监控平台对环境的依赖性,有效提高了监控性能。另外,本发明中,监控服务和被监控对象分别单独设置,各自独立,不存在耦合关系,如果需要对被监控对象进行维护时,不必同时停止监控服务和被监控对象,实现了对被监控对象如应用服务的单独维护。
附图说明
图1是现有技术的一种JMX监控系统的示意图;
图2是现有技术的一种Telnet监控系统的示意图;
图3是根据本发明实施例一的一种监控方法的步骤流程图;
图4是根据本发明实施例二的一种监控方法的流程示意图;
图5是图4所示实施例中的监控系统的架构示意图;
图6是根据本发明实施例三的一种监控方法的流程示意图;
图7是图6所示实施例中的监控系统的架构示意图;
图8是图6所示实施例中的多线程监控示意图;
图9是根据本发明实施例四的一种监控系统的结构框图;
图10是根据本发明实施例五的一种监控系统的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例一
参照图3,示出了根据本发明实施例一的一种监控方法的步骤流程图。
本实施例的监控方法包括以下步骤:
步骤S102:被监控平台通过监控服务接收客户端监控指令。
其中,客户端监控指令由客户端通过远程调用接口向被监控平台发送。
被监控平台中设置有监控服务,当客户端远程调用被监控平台,通过远程调用接口向被监控平台发送对被监控平台中的被监控对象进行监控的客户端监控指令时,由监控服务接收该监控指令。
本发明中,“服务”采用本领域技术人员的常规含义,如,一种满足某种领域需要的服务性的程序等。例如,监控服务可以是用于监控被监控对象的一段服务程序,被监控对象可以是用于实现某种具体功能的应用程序,如各种应用服务、数据库、FTP等。
步骤S104:被监控平台的监控服务根据客户端监控指令,调用被监控平台中对应的操作指令对被监控平台中的被监控对象进行监控,并向客户端返回监控结果。
其中,监控服务和被监控对象分别单独设置,各自独立,不存在耦合关系。现有监控方案中,监控服务和被监控对象之间存在着耦合关系,源代码和操作流程之间互相交叉,使得无法对被监控对象进行单独的维护和操作。而本发明中,监控服务和被监控对象相互独立,不再存在耦合关系,源代码和操作流程之间也互无交叉,各自独立执行各自的流程,通过被监控平台中对应的操作指令进行交互。
监控服务根据客户端监控指令调用被监控平台中对应的操作指令,使得客户端的被监控平台摆脱了对环境的依赖,如客户端不必考虑被监控平台是否支持JXM,或者,不需要客户端和被监控平台都支持Telnet等。
通过本实施例,被监控平台通过设置的监控服务接收客户端的远程调用发送的监控指令,被监控平台在接收到该监控指令后调用平台本身相对应的操作指令进行监控操作,并返回监控结果。通过本实施例,客户端无需考虑被监控平台的情况,被监控平台会自动根据客户端的监控指令调用本系统对应的指令进行操作,从而大大降低了客户端和被监控平台对环境的依赖性,有效提高了监控性能。另外,本本实施例中,监控服务和被监控对象分别单独设置,各自独立,不存在耦合关系,如果需要对被监控对象进行维护时,不必同时停止监控服务和被监控对象,实现了对被监控对象如应用服务的单独维护。
实施例二
参照图4,示出了根据本发明实施例二的一种监控方法的流程示意图。
本实施例中,以集中部署为例对本发明的监控方法作以说明。集中部署的监控系统的架构如图5所示,所有的被监控对象,如多个APP(应用服务)、数据库、FTP等设置在一个平台上,监控服务也设置在同一个平台上,客户端对该平台进行监控。当采用集中部署时,被监控平台仅有一个,则该被监控平台中设置有监控代理服务。监控代理服务可以与监控服务分开设置,但优选地,监控代理服务和监控服务合并设置,也即,监控服务同时具备监控代理服务功能。
在被监控平台通过监控服务接收客户端通过远程调用接口发送的客户端监控指令之前,客户端通过监控操作界面进行监控操作,通过远程调用接口发送获取请求,其中,获取请求用于请求获取被监控平台中的被监控对象的信息;指定的监控代理服务接收客户端通过远程调用接口发送的获取请求,首先获取被监控的Solaris的平台信息返回给客户端,然后再由客户端连接该Solaris平台上的监控服务,监控服务根据获取请求获取被监控平台中的被监控对象的信息,直接返回给客户端,供客户端选择被监控对象进行监控;然后,才进行客户端对被监控平台上的具体被监控对象的监控操作。
另外,本实施例中的被监控平台采用Solaris平台,但本领域技术人员应当明了,其它基于UNIX或LINUX内核的平台可同样参照本实施例进行。同样,采用其它内核操作系统的平台也可参照本实施例的相应部分进行被监控对象的监控。
本实施例的监控方法包括以下步骤:
步骤S202:客户端选择被监控对象后,通过监控操作界面进行监控操作,输入监控指令,请求对选择的被监控对象进行监控。
本实施例中,客户端提供有监控操作界面,供用户发送获取请求、显示获取的被监控对象、输入监控指令等,监控操作界面可以是客户端安装的专用监控软件的界面,也可以是客户端登陆相关服务器,通过浏览器访问的界面。通过监控操作界面,对用户屏蔽了监控操作的细节,用户只需简单地点击按钮或者输入简单的指令即可实现监控,而无须输入复杂专业的操作指令,减轻了用户负担,提升了用户使用体验。
步骤S204:客户端根据用户的操作生成客户端监控指令,使用JAVA远程调用的调用接口远程调用被监控平台,向被监控平台发送客户端监控指令。
本实施例中,以JAVA远程调用为例,但本领域技术人员应当明了,其它远程调用方案也同样适用。
步骤S206:被监控平台通过监控服务接收客户端通过远程调用接口发送的客户端监控指令,调用被监控平台中对应的操作指令对被监控平台中的被监控对象进行监控。
其中,监控服务和被监控对象分别单独设置,各自独立。
集中部署情况下,监控服务可以认为既是监控代理服务又是监控服务,也即,其既可以调用获取其所在的平台的信息和/或平台上的被监控对象的信息,也可以对被监控对象进行监控。
本实施例中,当用户在客户端对被监控对象进行操作时,如对被监控的APP服务信息进行维护操作时,该操作动作生成监控指令被Solaris平台的监控服务接收后,Solaris平台调用监控服务对APP服务信息进行维护操作,如维护APP信息(增加、修改、删除等操作),监控服务把这些操作执行后,根据业务需要,对反馈数据进行格式整合后反馈到客户端供用户查看。
本实施例中,每一个被监控的Solaris平台上都存在一个监控服务,负责在接收到客户端的JAVA远程调用的监控指令之后,由本平台的JAVA应用程序直接执行相关的Solaris操作系统指令,或者shell(UNIX、Solaris平台支持的一种编程语言)格式的操作系统指令集合(即多个Solaris指令组合)进行监控。这些指令在安装部署监控服务时配置,保证了监控指令的安全;同时,对客户端提供调用监控执行的接口,如JAVA的RMI(Remote MethodInvocation,远程方法调用),EJB(Enterprise Java Bean,企业级Java Bean应用)等远程调用技术接口,以便于客户端获取对应APP的监控信息;监控服务直接在被监控的Solaris平台上,直接本地化执行监控指令,效率高,数据正确性高,而且保证了监控指令,监控信息的安全和可靠。
步骤S208:被监控平台的监控服务执行数据库操作,请求监控信息数据库保存监控结果。
本实施例中,与监控信息数据相关的操作为可选操作,对于需要存储的信息(如修改后的App信息),监控服务可以请求监控信息数据库进行保存,监控信息数据库保存结果后,再把结果反馈给监控服务;然后,监控服务再根据业务需要,对反馈数据进行格式整合后反馈到客户端供用户查看。
步骤S210:监控信息数据库根据监控服务的指令,保存监控结果。
步骤S212:监控信息数据库向监控服务返回保存结果。
步骤S214:监控服务接收监控信息数据库的反馈,并向客户端返回该反馈。
步骤S216:客户端接收监控服务返回的反馈,呈现监控结果。
此外,本实施例中,客户端还可以通过监控操作界面输入动态配置指令或参数,对被监控对象进行动态配置;被监控平台通过监控服务接收客户端通过远程调用接口发送的配置指令;根据配置指令对被监控平台中的被监控对象进行动态配置。
比如,监控一个Solaris下的Oracle数据库系统,则可以对数据库进行数据空间的扩展,可以通过监控操作界面输入扩展的大小,实现对数据库空间的扩展;而且还可以在对数据库连接会话的监控UI(User Interface,用户接口界面)上,对非法连接会话进行停止等控制。
再比如,
监控服务端提供了常用的监控服务,用户可以根据实际情况进行选择性的配置,如监控服务可以提供基本的,诸如操作系统本身的CPU的监控,内存的监控等;还有数据库的监控,FTP的监控等。用户可以根据实际需要只选择其中部分监控即可,可以通过客户端的UI进行有选择的配置,若只需要监控数据库,则只需配置数据库即可。
此外,也可以根据有选择的在系统管理的服务端,通过配置文件,有选择的配置需要监控的服务。
再者,监控服务对被监控对象的监控可以采用多线程,即监控服务根据客户端监控指令,调用被监控平台中对应的操作指令,使用多线程对被监控平台中的被监控对象进行监控。
通过本实施例,使监控服务独立成为子系统,并且和应用服务部署在同一Solaris平台上;支持应用服务与操作系统指令集相结合的监控方式;支持多线程监控功能,实现了通过被监控平台的监控服务对Solaris平台的APP信息进行监控,以及对APP信息进行动态配置。相较于利用Telnet技术实现监控时,一方面,需要把被监控平台的信息配置到客户端,从而对被监控对象所在的Solaris平台构成威胁,而且容易造成APP服务本身信息的不安全相比,大大提高了对被监控平台实施监控的可靠性和安全性;另一方面,Telnet方式中监控的具体指令都存在于客户端,执行监控指令时,由客户端通过Telnet传递到具体的Solaris平台上远程执行,然后把监控的信息返回客户端,再根据需要把重要的信息提交到服务器进行保存,这种方式把监控指令配置到客户端非常不安全,并且整个过程通过Telnet交互,性能低,而且对环境依赖性强,如需配置并且支持Telnet服务才能执行,而本发明的方案,监控的具体指令根据客户端的相应指令在平台上获取,客户端无法获知平台上的具体监控指令,提高了监控的安全性,并且客户端的指令与客户端的环境相适应,无需考虑平台环境,而平台会根据客户端指令调用相应的平台上的指令,不必要求客户端与平台使用相同的环境,降低了对环境的依赖性,提高了监控性能和通用性。
实施例三
参照图6,示出了根据本发明实施例三的一种监控方法的流程示意图。
本实施例中,以分布式部署/集群部署为例对本发明的监控方法作以说明。分布式部署/集群部署的监控系统的架构如图7所示,包括多个被监控平台。本实施例中,被监控平台仍采用Solaris平台,同样,本领域技术人员应当明了,其它基于UNIX或LINUX内核的平台或者采用其它内核操作系统的平台也可参照本实施例进行被监控对象的监控。
图7所示的监控系统中,包括客户端、多个Solaris平台和监控信息数据库。其中,图中并排的四个长方体表示Solaris平台,每个Solaris平台上部署有被监控对象,如:App1(应用服务1),App2(应用服务2),App3(应用服务3)……;每个Solaris平台上还部署有监控服务,用来对所在的Solaris平台,以及所部署的被监控对象如上述的服务App x进行监控,本实施例中的监控技术利用了JAVA技术和Solaris指令相结合的方式(见下文中说明);监控信息数据库用以维护被监控对象(如App1,App2,App3)的信息,和/或被监控对象所在Solaris平台的信息,如IP、机器型号等,另外,监控服务会把需要保存的信息,运用JAVA的数据库技术(如JDBC、JPA、Hibernate等技术)保存到监控信息数据库中。
图7中,黑色实线实心双向箭头表示代理数据线,用来传递与被监控对象相关的信息,如App1、App2、App3所在的Solaris平台的操作系统信息,和/或App1、App2、App3自身的信息。黑色实线空心双向箭头表示指令分发数据线,用来表示客户端调用监控服务的动作,表示向Solaris平台上的监控服务发送监控指令,也表示从监控服务获取监控结果的信息,客户端可以采用RMI、EJB等远程调用技术,以支持分布式部署/集群部署的监控。黑色虚线空心双向箭头表示监控信息数据线,用以作为每个Solaris平台上监控服务和监控信息数据库的数据交互,表示监控服务可以把业务上比较重要的信息(该信息由具体业务决定)保存到监控信息数据库,也可以从监控信息数据库把这些信息读出来。
需要说明的是,因为本实施例采用了分布式部署/集群部署的监控系统,因此还需要设置监控代理服务。监控代理服务可以设置在一台专用的平台上,也可以设置在系统中的一或多个平台上。当设置在多个平台上时,则需选择其中一个被监控平台上的监控代理服务作为活动状态的监控代理服务。本实施例中,以设置在第一个Solaris平台(即设置有App1的Solaris平台)为例进行说明。通过监控代理服务,客户端可以对各个Solaris平台部署的App x服务信息进行维护查看并且向客户端提供。监控代理服务可以独立设置也可以与监控服务合并设置,当合并设置时,监控代理服务除上述功能外,还作为普通的监控服务,对自身所在Solaris平台及被监控对象如App服务进行监控。当监控系统中的多个或全部平台上均设置有监控代理服务时,可以互为备份,以保证系统的安全。在具体使用时,可以由系统从多个平台的监控代理服务中指定一个,也可以由客户端选择一个。
基于以上设置,本实施例的监控方法包括以下步骤:
步骤S302:客户端通过监控操作界面进行监控操作,发送获取请求。
其中,获取请求用于请求获取多个被监控平台的信息和/或多个被监控平台中的被监控对象的信息,如请求App服务信息。
优选地,本实施例中,客户端通过监控操作界面发送获取请求,并通过JAVA远程调用的调用接口向被监控平台的监控代理服务发送,远程调用被监控平台的监控代理服务。
步骤S304:当前选择的活动状态的被监控平台上的监控代理服务接收客户端通过远程调用接口发送的获取请求。
本实施例中,设定在分布式部署/集群部的情况下,每一个Solaris平台上都设置有监控代理服务,且监控代理服务和监控服务合并设置,则可选任何一个Solaris平台作为代理,本实施例中为第一个Solaris平台,用以维护被监控平台和被监控平台上的被监控对象如App服务的信息,同时监控代理服务也是所在Solaris平台的监控服务,监控自身所在系统的服务。
具体到本实施例中,第一个Solaris平台上的监控代理服务接收客户端通过远程调用接口发送的获取请求。
步骤S306:监控代理服务根据获取请求获取多个被监控平台的信息和/或多个被监控平台中的被监控对象的信息,并返回给客户端,供客户端选择被监控平台和被监控对象进行监控。
本实施例中,系统设置有监控信息数据库,监控代理服务根据获取请求,使用JAVA数据库操作指令连接和访问监控信息数据库,从监控信息数据库获取多个被监控平台的信息和/或多个被监控平台中的被监控对象的信息,并发送给客户端。
步骤S308:客户端选择被监控平台和被监控对象,通过远程调用接口向选择的被监控平台发送客户端监控指令。
步骤S310:被监控平台通过监控服务接收客户端通过远程调用接口发送的客户端监控指令。
步骤S312:监控服务根据客户端监控指令,调用被监控平台中对应的操作指令对被监控平台中的被监控对象进行监控。
其中,监控服务(本实施例中还包括监控代理服务)和所述被监控对象分别单独设置,各自独立。
例如,用户在客户端对所监控的App服务信息进行维护操作,该动作调用被监控平台上的监控服务对App服务信息进行维护操作,如维护App信息(增加,修改,删除等操作),监控服务把这些操作执行后,对于需要存储的信息(如修改后的App信息),请求监控信息数据库进行保存,监控信息数据库保存结果后,把结果反馈给监控代理;最后监控服务根据业务需要,对数据进行格式整合后反馈到客户端供用户查看。当然,对于不需要存储的信息,可以由监控服务直接将监控结果反馈给客户端。
优选地,监控服务根据客户端监控指令,调用被监控平台中对应的操作指令,使用多线程对被监控平台中的被监控对象进行监控。
系统监控服务对被监控对象(如应用服务、FTP、数据库等)进行监控时,如图8所示,对于每种需要监控的内容,能够在多线程状态下进行监控,对所监控的对象数据进行密集采集,提高平台资源的利用率,并且提高了系统监控服务的快速响应能力。
步骤S314:监控服务向监控信息数据库发送监控结果,将监控结果保存到监控信息数据库中。
优选地,监控服务使用JAVA数据库操作指令连接和访问监控信息数据库,将监控结果保存到监控信息数据库中。
所有的监控服务(如App1,App2上的监控服务)共享监控信息数据库,用以维护业务上重要的监控信息。每一个被监控的Solaris平台上都存在一个监控服务,负责由JAVA应用程序直接执行相关的Solaris操作系统指令,或者shell格式的操作系统指令集合(即多个Solaris指令组合)进行监控。这些指令在安装部署监控服务时配置,保证了监控命令的安全,同时对客户端提供调用监控执行的接口,如JAVA的RMI、EJB等远程调用技术接口,以便于客户端获取对应App的监控信息。监控服务直接在被监控的Solaris平台上,直接本地化执行监控指令,效率高,数据正确性高,而且保证了监控指令,监控信息的安全和可靠。
步骤S316:监控信息数据库保存监控结果,并将保存的结果返回给监控服务。
步骤S318:监控服务接收监控信息数据库返回的保存结果,组织监控结果数据,并向客户端发送。
步骤S320:客户端接收并展现监控结果数据。
本实施例中,客户端在发送获取请求后,通过监控代理服务获取被监控的App服务信息,然后运用JAVA远程调用技术(如RMI/EJB等)将监控指令发送给待监控的App对应的Solaris平台上的监控服务,然后由监控服务运行JAVA应用程序调用Solaris操作命令执行监控功能,并且把需要保存的监控信息,通过JAVA技术(如JDBC、JPA、hibernate等技术)保存到共享的监控信息数据库。同样,当客户端需要查看监控信息时,也是先通过监控代理服务获取被监控App的信息,然后请求被监控App对应Solaris平台上的监控服务,向监控信息数据库读取监控数据信息,反馈给客户端。
此外,本实施例中,客户端还可以通过监控操作界面输入动态配置指令或参数,对被监控对象进行动态配置;被监控平台通过监控服务接收客户端通过远程调用接口发送的配置指令;根据配置指令对被监控平台中的被监控对象进行动态配置。
通过本实施例,使监控服务和/或监控代理服务独立成为子系统,并且和应用服务部署在同一Solaris平台上,支持轻量级部署;支持应用服务与操作系统指令集相结合的监控方式,这种Solaris操作系统指令和应用服务相结合的方式,效率更高,监控信息更可靠;支持多线程监控功能,平台资源的利用率高,响应能力强;并且,当监控服务和监控代理服务合并设置时,实现了监控服务子系统本身同时拥有监控代理和监控管理服务的职责;客户端的监控指令能够根据监控代理服务提供的App服务数据自动分发到不同Solaris平台上的监控服务进行执行,能够提供专有的客户端供用户使用,操作简便实用;由监控代理服务维护监控分发信息和监控内容,所有的监控管理服务共享监控信息数据库。
实施例四
参照图9,示出了根据本发明实施例四的一种监控系统的结构框图。
本实施例的监控系统为集中式部署的监控系统,该监控系统包括客户端402和一个被监控平台404。
其中,被监控平台404包括:接收模块4042,用于通过监控服务接收客户端监控指令,其中,客户端监控指令由客户端通过远程调用接口发送给所述被监控平台;监控模块4044,用于由监控服务根据客户端监控指令,调用被监控平台中对应的操作指令对被监控平台中的被监控对象进行监控,并向客户端返回监控结果;其中,监控服务和被监控对象分别单独设置,各自独立。
优选地,被监控平台中的监控服务还执行监控代理服务的功能,也即,执行监控代理服务在接收模块4042通过监控服务接收客户端通过远程调用接口发送的客户端监控指令之前,接收客户端通过远程调用接口发送的获取请求,获取请求用于请求获取被监控平台中的被监控对象的信息;根据获取请求获取被监控平台中的被监控对象的信息,并返回给客户端,供客户端选择被监控对象进行监控。需要说明的是,监控服务和监控代理服务也可以分开设置,独立执行各自的功能。
优选地,监控模块4044由监控服务根据客户端监控指令,调用被监控平台中对应的操作指令,使用多线程对被监控平台中的被监控对象进行监控。
优选地,客户端402通过JAVA远程调用的调用接口远程调用被监控平台,向被监控平台发送客户端监控指令,其中,被监控平台使用基于UNIX或LINUX的操作系统内核。
优选地,客户端402接收用户通过监控操作界面输入的操作,根据操作使用JAVA远程调用的调用接口远程调用被监控平台,向被监控平台发送客户端监控指令。
优选地,被监控平台404还包括:配置模块4046,用于通过监控服务接收客户端通过远程调用接口发送的配置指令;根据配置指令对被监控平台中的被监控对象进行动态配置。
本实施例的监控系统用于实现前述方法实施例中相应的集中式部署情况下的监控方法,并具有相应的方法实施例的有益效果,在此不再赘述。
实施例五
参照图10,示出了根据本发明实施例五的一种监控系统的结构框图。
本实施例的监控系统为分布式部署/集群部署的监控系统,包括客户端502和多个被监控平台504。
其中,每一个被监控平台504均包括:监控代理模块5042,用于接收客户端通过远程调用接口发送的获取请求,获取请求用于请求获取多个被监控平台的信息和/或多个被监控平台中的被监控对象的信息;根据获取请求获取多个被监控平台的信息和/或多个被监控平台中的被监控对象的信息,并返回给客户端,供客户端选择被监控平台和/或被监控对象进行监控;接收模块5044,用于通过监控服务接收客户端监控指令,其中,客户端监控指令由客户端通过远程调用接口发送给所述被监控平台;监控模块5046,用于由监控服务根据客户端监控指令,调用被监控平台中对应的操作指令对被监控平台中的被监控对象进行监控,并向客户端返回监控结果;其中,监控服务和被监控对象分别单独设置,各自独立。
优选地,监控代理模块5042,用于接收客户端通过远程调用接口发送的获取请求,根据获取请求使用JAVA数据库操作指令连接和访问监控信息数据库,从监控信息数据库获取多个被监控平台的信息和/或多个被监控平台中的被监控对象的信息,并发送给客户端。
优选地,监控代理模块5042和监控模块5046合并设置。
优选地,监控模块5046用于由监控服务根据客户端监控指令,调用被监控平台中对应的操作指令,使用多线程对被监控平台中的被监控对象进行监控,并向客户端返回监控结果。
优选地,客户端502通过JAVA远程调用的调用接口远程调用被监控平台504,向被监控平台504发送客户端监控指令,其中,被监控平台504使用基于UNIX或LINUX的操作系统内核。
优选地,客户端502接收用户通过监控操作界面输入的操作,根据操作使用JAVA远程调用的调用接口远程调用被监控平台504,向被监控平台504发送客户端监控指令。
优选地,被监控平台504还包括:配置模块5048,用于通过监控服务接收客户端通过远程调用接口发送的配置指令;根据配置指令对被监控平台中的被监控对象进行动态配置。
本实施例的监控系统用于实现前述方法实施例中相应的分布式部署/集群部署情况下的监控方法,并具有相应的方法实施例的有益效果,在此不再赘述。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上对本发明所提供的一种监控方法和系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (11)
1.一种监控方法,其特征在于,包括:
被监控平台通过监控服务接收客户端监控指令,其中,所述客户端监控指令由客户端通过远程调用接口向所述被监控平台发送;
所述监控服务根据所述客户端监控指令,调用所述被监控平台中对应的操作指令对所述被监控平台中的被监控对象进行监控,并向所述客户端返回监控结果;
其中,所述监控服务和所述被监控对象分别单独设置。
2.根据权利要求1所述的方法,其特征在于,所述被监控平台包括多个,所述多个被监控平台中的一个或多个平台中设置有监控代理服务;
在所述被监控平台通过监控服务接收客户端通过远程调用接口发送的客户端监控指令的步骤之前,还包括:
从设置有所述监控代理服务的被监控平台中选择一个被监控平台;
选择的所述被监控平台上的监控代理服务接收所述客户端通过所述远程调用接口发送的获取请求,所述获取请求用于请求获取所述多个被监控平台的信息和/或所述多个被监控平台中的被监控对象的信息;
根据所述获取请求获取所述多个被监控平台的信息和/或所述多个被监控平台中的被监控对象的信息,并返回给所述客户端,供所述客户端选择所述被监控平台和/或所述被监控对象进行监控。
3.根据权利要求2所述的方法,其特征在于,所述根据所述获取请求获取所述多个被监控平台的信息和/或所述多个被监控平台中的被监控对象的信息,并返回给所述客户端的步骤包括:
所述监控代理服务根据所述获取请求,使用JAVA数据库操作指令连接和访问监控信息数据库,从所述监控信息数据库获取所述多个被监控平台的信息和/或所述多个被监控平台中的被监控对象的信息,并发送给所述客户端。
4.根据权利要求1所述的方法,其特征在于,当所述被监控平台仅有一个时,所述被监控平台中设置有监控代理服务;
在所述被监控平台通过监控服务接收客户端通过远程调用接口发送的客户端监控指令的步骤之前,还包括:
所述被监控平台上的监控代理服务接收所述客户端通过所述远程调用接口发送的获取请求,所述获取请求用于请求获取所述被监控平台中的被监控对象的信息;
根据所述获取请求获取所述被监控平台中的被监控对象的信息,并返回给所述客户端,供所述客户端选择所述被监控对象进行监控。
5.根据权利要求2、3或4所述的方法,其特征在于,所述监控服务和所述监控代理服务合并设置。
6.根据权利要求1所述的方法,其特征在于,所述监控服务根据所述客户端监控指令,调用所述被监控平台中对应的操作指令对所述被监控平台中的被监控对象进行监控的步骤包括:
所述监控服务根据所述客户端监控指令,调用所述被监控平台中对应的操作指令,使用多线程对所述被监控平台中的被监控对象进行监控。
7.根据权利要求1所述的方法,其特征在于,在所述被监控平台通过监控服务接收客户端通过远程调用接口发送的客户端监控指令的步骤之前,还包括:
所述客户端通过JAVA远程调用的调用接口远程调用所述被监控平台,向所述被监控平台发送所述客户端监控指令,其中,所述被监控平台使用基于UNIX或LINUX的操作系统内核。
8.根据权利要求7所述的方法,其特征在于,所述客户端通过JAVA远程调用的调用接口远程调用所述被监控平台,向所述被监控平台发送所述客户端监控指令的步骤包括:
所述客户端接收用户通过监控操作界面输入的操作,根据所述操作使用JAVA远程调用的调用接口远程调用所述被监控平台,向所述被监控平台发送所述客户端监控指令。
9.根据权利要求1所述的方法,其特征在于,还包括:
所述被监控平台通过所述监控服务接收所述客户端通过所述远程调用接口发送的配置指令;
根据所述配置指令对所述被监控平台中的被监控对象进行动态配置。
10.一种监控系统,包括被监控平台,其特征在于,所述被监控平台包括:
接收模块,用于通过监控服务接收客户端监控指令,其中,所述客户端监控指令由客户端通过远程调用接口向所述被监控平台发送;
监控模块,用于由所述监控服务根据所述客户端监控指令,调用所述被监控平台中对应的操作指令对所述被监控平台中的被监控对象进行监控,并向所述客户端返回监控结果;
其中,所述监控服务和所述被监控对象分别单独设置。
11.根据权利要求10所述的系统,其特征在于,所述监控系统包括多个所述被监控平台;
每个所述被监控平台还包括:监控代理模块,用于在所述接收模块通过监控服务接收客户端通过远程调用接口发送的客户端监控指令之前,接收所述客户端通过所述远程调用接口发送的获取请求,所述获取请求用于请求获取所述多个被监控平台的信息和/或所述多个被监控平台中的被监控对象的信息;根据所述获取请求获取所述多个被监控平台的信息和/或所述多个被监控平台中的被监控对象的信息,并返回给所述客户端,供所述客户端选择所述被监控平台和/或所述被监控对象进行监控。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310042614.1A CN103107921B (zh) | 2013-02-01 | 2013-02-01 | 监控方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310042614.1A CN103107921B (zh) | 2013-02-01 | 2013-02-01 | 监控方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103107921A true CN103107921A (zh) | 2013-05-15 |
CN103107921B CN103107921B (zh) | 2015-12-02 |
Family
ID=48315501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310042614.1A Active CN103107921B (zh) | 2013-02-01 | 2013-02-01 | 监控方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103107921B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103581322A (zh) * | 2013-11-08 | 2014-02-12 | 大唐移动通信设备有限公司 | 一种监控服务器的方法、系统及一种服务器设备 |
CN103777593A (zh) * | 2013-12-25 | 2014-05-07 | 中软信息系统工程有限公司 | 一种产品自动化操控生产系统及其实现方法 |
CN104111869A (zh) * | 2014-07-04 | 2014-10-22 | 北京思特奇信息技术股份有限公司 | 一种基于Curses技术实现跨用户跨主机管理的方法及系统 |
CN104580426A (zh) * | 2014-12-26 | 2015-04-29 | 曙光信息产业(北京)有限公司 | 基于Android平台的远程监控方法及装置 |
CN106354602A (zh) * | 2016-08-25 | 2017-01-25 | 乐视控股(北京)有限公司 | 一种服务监控方法和设备 |
CN108134716A (zh) * | 2017-12-25 | 2018-06-08 | 千寻位置网络有限公司 | 播发数据的监控方法及系统、控制终端、存储器 |
CN109343500A (zh) * | 2018-11-28 | 2019-02-15 | 上海风语筑展示股份有限公司 | 一种中心化展示节点监控管理系统及方法 |
CN111130919A (zh) * | 2019-11-13 | 2020-05-08 | 贵州医渡云技术有限公司 | 一种接口监控方法、装置、系统及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1547356A (zh) * | 2003-12-10 | 2004-11-17 | 中国科学院计算技术研究所 | 一种面向网格的监控系统及方法 |
CN1746844A (zh) * | 2005-09-29 | 2006-03-15 | 浪潮电子信息产业股份有限公司 | 一种跨操作系统平台的机群系统监控和管理方法 |
CN101605056B (zh) * | 2009-06-16 | 2012-09-05 | 中兴通讯股份有限公司 | 一种j2ee服务器监控装置及采用该装置的监控方法 |
CN102156729A (zh) * | 2011-03-29 | 2011-08-17 | 北京京东世纪贸易有限公司 | 监控多个数据库服务器的系统和方法 |
CN102521390B (zh) * | 2011-12-21 | 2015-07-08 | 北京人大金仓信息技术股份有限公司 | 一种基于功能插件的数据库管理监控系统 |
-
2013
- 2013-02-01 CN CN201310042614.1A patent/CN103107921B/zh active Active
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103581322A (zh) * | 2013-11-08 | 2014-02-12 | 大唐移动通信设备有限公司 | 一种监控服务器的方法、系统及一种服务器设备 |
CN103581322B (zh) * | 2013-11-08 | 2017-02-08 | 大唐移动通信设备有限公司 | 一种监控服务器的方法、系统及一种服务器设备 |
CN103777593A (zh) * | 2013-12-25 | 2014-05-07 | 中软信息系统工程有限公司 | 一种产品自动化操控生产系统及其实现方法 |
CN104111869A (zh) * | 2014-07-04 | 2014-10-22 | 北京思特奇信息技术股份有限公司 | 一种基于Curses技术实现跨用户跨主机管理的方法及系统 |
CN104580426A (zh) * | 2014-12-26 | 2015-04-29 | 曙光信息产业(北京)有限公司 | 基于Android平台的远程监控方法及装置 |
CN106354602A (zh) * | 2016-08-25 | 2017-01-25 | 乐视控股(北京)有限公司 | 一种服务监控方法和设备 |
CN108134716A (zh) * | 2017-12-25 | 2018-06-08 | 千寻位置网络有限公司 | 播发数据的监控方法及系统、控制终端、存储器 |
CN109343500A (zh) * | 2018-11-28 | 2019-02-15 | 上海风语筑展示股份有限公司 | 一种中心化展示节点监控管理系统及方法 |
CN111130919A (zh) * | 2019-11-13 | 2020-05-08 | 贵州医渡云技术有限公司 | 一种接口监控方法、装置、系统及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN103107921B (zh) | 2015-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103107921B (zh) | 监控方法和系统 | |
CN112799789B (zh) | 一种节点集群管理方法、装置、设备及存储介质 | |
CN111506412A (zh) | 基于Airflow的分布式异步任务构建、调度系统及方法 | |
CN111831269A (zh) | 一种应用开发系统、运行方法、设备及存储介质 | |
US11436066B2 (en) | System for offline object based storage and mocking of rest responses | |
CN108270818B (zh) | 一种微服务架构系统及其访问方法 | |
CN110309231B (zh) | 一种跨机房的数据同步方法及系统 | |
US20170357524A1 (en) | Automated software configuration management | |
CN103259870B (zh) | 一种Web应用服务方法和系统 | |
CN113900834B (zh) | 基于物联网技术的数据处理方法、装置、设备及存储介质 | |
CN111526049B (zh) | 运维系统、运维方法、电子设备和存储介质 | |
CN110138876B (zh) | 任务部署方法、装置、设备及平台 | |
US20150319221A1 (en) | Tracing business transactions based on application frameworks | |
CN108932157B (zh) | 分布式处理任务的方法、系统、电子设备和可读介质 | |
CN103034527A (zh) | 混合虚拟化云计算资源优化控制方法与系统 | |
CN113703997A (zh) | 集成多种消息代理的双向异步通信中间件系统及实现方法 | |
CN104484094A (zh) | 基于多屏工作站的隧道监控多网页界面的实现方法 | |
CN113254217A (zh) | 业务的消息处理方法、装置及电子设备 | |
CN103024058A (zh) | Web服务调用方法及系统 | |
CN110781009A (zh) | 浏览器页面实时通信的方法及装置 | |
CN113419818B (zh) | 基础组件部署方法、装置、服务器及存储介质 | |
US10924527B2 (en) | Dynamic workflow-based composite web service system and method | |
CN104486149B (zh) | 一种用于地面测试的有限状态机方法 | |
CN110661851A (zh) | 数据交换方法和装置 | |
CN111301789A (zh) | 应用软件打包方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |