`
dannyhz
  • 浏览: 392846 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

JMX 例子 得到java mx对象

 
阅读更多
java 跑一个系统用这样的参数

vm arguments:

-Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false

TestProcessResource


package com.statestr.gcth.client.simplefunction.dao;

import java.util.List;

import com.statestr.gcth.application.dao.UseCaseProcessDao;
import com.statestr.gcth.application.model.DefaultProcessResource;
import com.statestr.gcth.core.InitializationException;
import com.statestr.gcth.core.context.ContextManager;
import com.statestr.gcth.core.context.FrameworkContainer;

public class TestProcessResource {
	private static FrameworkContainer container;
	
	public static void main(String[] args) {
		
		String applicationName = "gcth";

		String frameworkName = "simplefunction/simple_test";
		// load from xml file
		System.setProperty("FAW.goldcopy.bootstrap.config.source", "xml");
		
		// now start up the GCTH framework
		try {
			container = FrameworkContainer.create(applicationName, frameworkName);
		} catch (Exception e) {
			String error = "Failed to start framework " + applicationName + " with error:" + e.getMessage();
			throw new InitializationException(error, e);
		}
		
		UseCaseProcessDao dao = ContextManager.getReference("useCaseProcessDao", com.statestr.gcth.application.dao.impl.UseCaseProcessDaoImpl.class);
		List<DefaultProcessResource> resourceList = dao.loadDefaultProcessResource("defaultRemediationPlatform");
		System.out.println(resourceList.size());
	}
}




package com.statestr.gcth.client.simplefunction.jxm;

import java.io.IOException;
import java.lang.management.ManagementFactory;
import java.lang.management.RuntimeMXBean;
import java.net.MalformedURLException;
import java.util.List;
import java.util.Properties;
import java.util.Set;
import java.util.TreeSet;

import javax.management.MBeanOperationInfo;
import javax.management.MBeanServerConnection;
import javax.management.ObjectName;
import javax.management.remote.JMXConnector;
import javax.management.remote.JMXConnectorFactory;
import javax.management.remote.JMXServiceURL;


import com.sun.management.ThreadMXBean;

public class JmxTest {
	
	public static void main(String[] args) throws Exception {

		JMXServiceURL address = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://localhost:9999/jmxrmi");  
		JMXConnector connector = JMXConnectorFactory.connect(address);  
		MBeanServerConnection mbs = connector.getMBeanServerConnection();  
		ThreadMXBean threadBean = ManagementFactory.newPlatformMXBeanProxy  
		(mbs, ManagementFactory.THREAD_MXBEAN_NAME, ThreadMXBean.class);  
		
//		RuntimeMXBean rmxb = ManagementFactory.newPlatformMXBeanProxy(connector  
//				            .getMBeanServerConnection(),"java.lang:type=Runtime",  
//				                RuntimeMXBean.class);  

//		RuntimeMXBean rmxb = ManagementFactory.newPlatformMXBeanProxy(connector  
//	            .getMBeanServerConnection(),"GoldCopy:type=Framework,name=Context",  
//	                RuntimeMXBean.class);  
		
		MBeanServerConnection mbsc = connector.getMBeanServerConnection();
		String[] domains = mbsc.getDomains();
//		for(String domain : domains){
//			System.out.println(domain);
//		}
		List<String> componentList = (List<String>)mbsc.invoke(new ObjectName("GoldCopy:type=Framework,name=Context"), "queryComponentList", null, null);
		
		for(String op : componentList){
			System.out.println(op);
		}	
		

		Set<ObjectName> names = 
		    new TreeSet<ObjectName>(mbsc.queryNames(new ObjectName("GoldCopy:type=Framework,name=Context"), null));
		for(ObjectName obj : names){
			
			System.out.println(obj);
		}
		
		System.out.println(threadBean.getThreadCount());//线程数量      

	}

}




启动的 参数是啥端口 ,客户端 就用啥 端口接收 , 这边是 9999
分享到:
评论

相关推荐

    最简单JMX例子

    Java Management ...总之,JMX提供了一种灵活、统一的方式来管理和监控Java应用,而"最简单JMX例子"是学习这项技术的良好起点。通过实际操作这个例子,你将更好地理解JMX的工作机制,并能将其运用到自己的项目中。

    jmx例子一则

    首先,JMX允许开发者定义名为MBeans(Managed Beans)的对象,这些对象代表了可管理的资源,如系统状态、配置参数或服务性能指标。MBeans可以是标准MBeans、开放MBeans或定制MBeans,根据不同的需求和复杂性进行选择...

    JMX小例子以及介绍

    - **MBean(Managed Beans)**: MBean是JMX中最基本的管理单元,它是Java对象,代表可管理的资源或服务。MBean可以是标准MBean、开放MBean或模型MBean,每种类型都有不同的接口和注册方式。 - **MBean Server**: 这...

    Zabbix通过JMX方式监控java中间件

    ### Zabbix通过JMX方式监控Java中间件的关键知识点 #### 一、Zabbix与JMX监控简介 **Zabbix**是一款开源的企业级监控工具,它能够监控网络中的各种硬件资源和软件服务的状态,并且提供了丰富的功能,如自动发现、...

    jmx_prometheus_javaagent-0.12.0.jar

    代理Java包,用于生成JVM的健康的数据,jmx_prometheus_javaagent-0.12.0.jar

    java jmx agent不安全的配置漏洞如何改进(由浅入深代码范例和详细说明).docx

    Java JMX Agent 不安全的配置漏洞如何改进 Java JMX(Java Management Extensions)是一种用于监控和管理应用程序的工具,通过使用 JMX Agent,我们可以暴露应用程序的管理和监控接口,从而允许外部管理应用程序的...

    JVM JMX java

    JMX为Java应用提供了管理和监控的框架,允许开发者创建、注册和管理MBeans(Managed Beans),这些对象代表了应用的组件或服务。MBeans可以是简单的数据结构,也可以包含操作和通知,使得开发者能够远程控制和监控...

    JAVA JMX 学习资料

    Java Management Extensions(JMX)是Java平台上的一个标准技术,用于管理和监控应用程序、系统和服务。JMX允许开发者创建可管理的组件,这些组件可以暴露其状态、性能指标和操作,以便于通过管理工具进行监控和配置...

    jmx_prometheus_javaagent-0.13.0.jar

    https://pan.baidu.com/s/15TPev6CpXCRIPvXCIreMzA sbnh

    java jmx操作示例源码

    Java JMX(Java Management Extensions,Java管理扩展)是一种标准,用于在Java应用程序中实现管理和监控。JMX允许开发者创建、注册和管理MBeans(Managed Beans),这些MBeans代表了应用程序中的可管理资源,如系统...

    一个jmx的小例子

    在这个"一个jmx的小例子"中,我们很可能是通过编写Java代码来创建和操作MBeans,然后使用Eclipse这样的集成开发环境(IDE)来运行示例。Eclipse本身并不直接支持JMX,但可以通过安装插件如JConsole或VisualVM来辅助...

    mx4j管理jmx的jar与spring结合使用

    它通过JMX(Java Management Extensions)标准提供服务,允许开发者对运行中的Java应用进行性能监控、配置管理和故障排查。Spring框架则是一个强大的Java企业级应用开发框架,它支持多种功能,包括依赖注入、AOP...

    java jmx agent不安全的配置漏洞.md

    java jmx agent不安全的配置漏洞

    spring框架下jmx入门例子

    在Spring中集成JMX(Java Management Extensions)技术,可以使我们能够远程管理和监控应用中的对象,比如动态修改服务端的属性,这对于调试和性能优化非常有帮助。本教程将引导你入门Spring框架下的JMX应用。 首先...

    jmx_examples.rar_Java 8_jmx_jmx examples_jmx main_jmx_examples

    Java Management Extensions(JMX)是Java平台上的一个标准技术,用于管理和监控应用程序、服务和设备。JMX允许开发者创建管理接口,以便对运行时的组件进行动态监控和管理。在这个"jmx_examples.rar"压缩包中,包含...

    tomcat8监控jar包,catalina-jmx-remote java-visualVM专用

    tomcat8监控jar包,catalina-jmx-remote java-visualVM专用

    tomcat9监控jar包,catalina-jmx-remote java-visualVM专用

    tomcat9监控jar包,catalina-jmx-remote java-visualVM专用

    Zabbix通过JMX监控java中间件.docx

    Zabbix 通过 JMX 监控 Java 中间件 Zabbix 是一个功能强大的监控工具,它可以监控各种类型的设备和应用程序。随着 Java 中间件的广泛应用,Zabbix 也提供了对 Java 中间件的监控功能,通过 JMX(Java Management ...

Global site tag (gtag.js) - Google Analytics