JAVA管理扩展抓取组件及JAVA管理扩展抓取组件实现方法技术

技术编号:14995986 阅读:165 留言:0更新日期:2017-04-04 01:29
一种JAVA管理扩展抓取组件,包括:创建单元,用于创建JMX抓取组件;赋值单元,用于将第一参数值P1、第二参数值P2、第三参数值P3传入JMX抓取组件;数据反馈单元,用于根据第一参数值P1、第二参数值P2自动适配远程连接接口并自动定位并返回所需的数据。本发明专利技术具有以下有益效果:提供了一个通用的JAVA管理扩展抓取组件,研发人员无需对JMX自身的规范、实现进行学习,即可快速地应用该JMX抓取组件。2.研发人员可以应用该JMX抓取组件快速的获取各类基于JMX实现的数据抓取,无需对被监控系统采用哪一类连接方式(Connector)进行了解。3.研发人员无需对被监控系统的具体MBean实现进行了解。由该JMX抓取组件根据JMX规范进行自动遍历、自动定位。

【技术实现步骤摘要】

本专利技术涉及软件编程
,特别涉及一种JAVA管理扩展抓取组件及JAVA管理扩展抓取组件实现方法。
技术介绍
JMX(JavaManagementExtensions,即Java管理扩展)是一个为应用程序、设备、系统等植入管理功能的框架。JMX可以跨越一系列异构操作系统平台、系统体系结构和网络传输协议,灵活的开发无缝集成的系统、网络和服务管理应用。JMX是一份规范,SUN依据这个规范在JDK各个版本提供了JMX接口。而根据这个接口的实现则有很多种,比如Weblogic的JMX实现、MX4J、JBoss的JMX实现等等。JMX提供了两种远程连接方式:RMIConnector和JMXMPConnector(JMXmessageprotocolConnector)。JMXRemoteAPI定义了标准的连接器RMIConnector,它通过RMI提供了对MBeanServer的远程访问。JMXRemoteAPI还定义了一个可选协议,名为JMXMP(JMX消息协议)。JMXMP基于TCP连接上的序列化Java对象(在可选包javax.management.remote.message中定义)。实现此协议的连接器称为JMXMPConnector。也可以使用JMXConnectorFactory提供的用户定义的连接器协议和可选的通用连接器(javax.management.remote.generic)。当我们需要监控一套基于JAVA开发的应用系统的时候,研发人员可以编写代码,通过JMX接口获得中间件的运行数据,实现对信息系统运行状态的实时监控。一般来说,当研发人员需要监控不同的中间件的运行数据的时候,就需要针对不同厂商、版本的中间件进行代码的开发。因此研发人员需要对JMX有非常深入的了解。同时由于各种JMX实现的不同,导致研发实现的难度较大。代码的通用性较差。
技术实现思路
为了解决现有技术中研发人员需要监控不同的中间件的运行数据,由于各种JMX实现的不同,导致针对不同厂商、版本的中间件进行代码的研发实现的难度较大,并且代码的通用性较差的缺点,提出一种JAVA管理扩展抓取组件及JAVA管理扩展抓取组件实现方法。一种JAVA管理扩展抓取组件,其包括如下单元:创建单元,用于创建JMX抓取组件;赋值单元,用于将第一参数值P1、第二参数值P2传入JMX抓取组件;数据反馈单元,用于根据第一参数值P1、第二参数值P2自动适配远程连接接口并自动定位并返回所需的数据。一种JAVA管理扩展抓取组件实现方法,其包括如下步骤:S1、创建JMX抓取组件;S2、将第一参数值P1、第二参数值P2传入JMX抓取组件;S3、根据第一参数值P1、第二参数值P2自动适配远程连接接口并自动定位并返回所需的数据。实施本专利技术提供的JAVA管理扩展抓取组件及JAVA管理扩展抓取组件实现方法具有以下有益效果:提供了一个通用的JAVA管理扩展抓取组件(JMX抓取组件),研发人员无需对JMX自身的规范、实现进行学习,即可快速地应用该JMX抓取组件。2.研发人员可以应用该JMX抓取组件快速的获取各类基于JMX实现的数据抓取,无需对被监控系统采用哪一类连接方式(Connector)进行了解。3.研发人员无需对被监控系统的具体MBean实现进行了解。由该JMX抓取组件根据JMX规范进行自动遍历、自动定位。附图说明图1是本专利技术实施例的JAVA管理扩展抓取组件结构框图;图2是本专利技术实施例的JAVA管理扩展抓取组件实现方法流程图。具体实施方式如图1所示,一种JAVA管理扩展抓取组件,其包括如下单元:创建单元10,用于创建JMX抓取组件。可选地,创建JMX抓取组件的方式如下:JMXControljMonitor=newJMXControl();赋值单元20,用于将第一参数值P1、第二参数值P2传入JMX抓取组件。可选地,将第一参数值P1、第二参数值P2传入JMX抓取组件的方式如下:jMonitor.getMBeanValue(\service:jmx:t3:///jndi/t3://10.52.1.77:7001/weblogic.management.mbeanservers.domainruntime,weblogic,weblogic\,\#MaxHeapSize#\)。数据反馈单元30,用于根据第一参数值P1、第二参数值P2自动适配远程连接接口并自动定位并返回所需的数据。可选地,在本专利技术实施例所述的JAVA管理扩展抓取组件中,赋值单元20中第一参数值P1为JMX的连接字符串,第二参数值P2为需要获取的JMX实现的对象名称。可选地,在本专利技术实施例所述的JAVA管理扩展抓取组件中,第一参数值P1包括服务器IP、端口信息。在本专利技术实施例中,服务器IP、端口信息是第一参数值P1中必须有的。可选地,在本专利技术实施例所述的JAVA管理扩展抓取组件中,第一参数值P1还包括用户名信息、密码信息。如果没有用户名信息、密码信息,则默认为空。通过实施本实施例,JAVA管理扩展抓取组件可以连接公开的(无用户名与密码)和非公开的(需用户名与密码)两种权限的JMX实现。可选地,在本专利技术实施例所述的JAVA管理扩展抓取组件中,数据反馈单元30包括:根据第一参数P1,自动判断JMX使用的远程连接方式。JMX提供的远程连接方式包括但不限于RMIConnector(RMI为远程接口调用)和JMXMPConnector两种。研发人员可以应用该JMX抓取组件快速的获取各类基于JMX实现的数据抓取,无需对被监控系统采用哪一类连接方式(Connector)进行了解,实现了远程连接方式的自动定位。根据第一参数P1,JMX抓取组件连接对应的应用,并创建对应的工厂对象FAC。工厂对象FAC包括但不限于Weblogic中间件、Tomcat中间件等。Weblogic为基于JAVAEE架构的中间件,Tomcat中间件为web服务器的中间件,是应用JAVAweb工程的容器。通过工厂对象FAC确定目前所连接的中间件类型。根据第二参数P2,在工厂对象FAC中自动定位所需要获取的对象MBO。MBO为项目的一种,即自定义开发的MBO类。根据获得的对象MBO获得所需的指标值;并根据指标值的数据类型返回对象MBO对应的数据值VAL(VAL为数据值的英文缩写)。可选地,在本专利技术实施例所述的JAVA管理扩展抓取组件中本文档来自技高网
...

【技术保护点】
一种JAVA管理扩展抓取组件,其包括如下单元:创建单元,用于创建JMX抓取组件;赋值单元,用于将第一参数值P1、第二参数值P2传入JMX抓取组件;数据反馈单元,用于根据第一参数值P1、第二参数值P2自动适配远程连接接口并自动定位并返回所需的数据。

【技术特征摘要】
1.一种JAVA管理扩展抓取组件,其包括如下单元:
创建单元,用于创建JMX抓取组件;
赋值单元,用于将第一参数值P1、第二参数值P2传入JMX抓取组件;
数据反馈单元,用于根据第一参数值P1、第二参数值P2自动适配远程连接
接口并自动定位并返回所需的数据。
2.如权利要求1所述的JAVA管理扩展抓取组件,其特征在于,
赋值单元中第一参数值P1为JMX的连接字符串,第二参数值P2为需要获
取的JMX实现的对象名称。
3.如权利要求2所述的JAVA管理扩展抓取组件,其特征在于,
第一参数值P1包括服务器IP、端口信息。
4.如权利要求3所述的JAVA管理扩展抓取组件,其特征在于,
第一参数值P1还包括用户名信息、密码信息。
5.如权利要求4所述的JAVA管理扩展抓取组件,其特征在于,
数据反馈单元包括:
根据第一参数P1,自动判断JMX使用的远程连接方式;
根据第一参数P1,JMX抓取组件连接对应的应用,并创建对应的工厂对象
FAC;
通过工厂对象FAC确定目前所连接的中间件类型;
根据第二参数P2,在工厂对象FAC中自动定位所需要获取的对象MBO;
根据获得的对象MBO获得所需的指标值;并根据指标值的数据类型返回对
象MBO对应的数据值VAL。
6.根据权利要求4所述的JAVA管理扩展抓取组...

【专利技术属性】
技术研发人员:张科肖治华朱小军廖荣涛徐静进余铮王逸兮邹澄澄毛竹吴峥詹伟徐焕查志勇刘芬龙霏罗弦冯浩朱闻远唐静肖锐
申请(专利权)人:国家电网公司国网湖北省电力公司信息通信公司
类型:发明
国别省市:北京;11

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

1