cyrus 发表于 2017-2-14 11:47:29

JMX实现监控weblogic问题

工作须要,得监控weblogic的指标,例如:连接池、线程数、JMS明细、EJB明细,等指标!在网上了解了一下JMX原理,也做了一个JMX的Hello例子,但是要监控weblogic不知道如何动手,得到了与weblogic的Mbeanserverconnection,但是不知道怎么得到我要的监控指标,是还要注册相应的Mbean?该Mbean要怎么写呀?又怎么从Mbean上得到相应的监控数据,自己做的JMX例子好像太浅,希望哪位JMX老手指点一下,能否提供点JMX资料!我得到Mbeanserverconnection的代码如下:
private static MBeanServerConnection lookupMBeanServer9(String ip, String port, String name, String pass)
    {
      String protocol;
      String s5;
      protocol = "t3";
      s5 = "/jndi/weblogic.management.mbeanservers.runtime";
      MBeanServerConnection mbeanserverconnection;
      try
      {
      //JarLoader jarloader = new JarLoader((new StringBuilder()).append(".").append(File.separator).append("working").append(File.separator).append("classes").append(File.separator).append("weblogicclient9.jar").toString());
      //Thread.currentThread().setContextClassLoader(jarloader);
      JMXServiceURL jmxserviceurl = new JMXServiceURL(protocol,ip, Integer.parseInt(port), s5);
      Hashtable hashtable = new Hashtable();
      hashtable.put("java.naming.security.principal", name);
      hashtable.put("java.naming.security.credentials", pass);
      hashtable.put("jmx.remote.protocol.provider.pkgs", "weblogic.management.remote");
      JMXConnector jmxconnector = JMXConnectorFactory.connect(jmxserviceurl, hashtable);
      mbeanserverconnection = jmxconnector.getMBeanServerConnection();

      return mbeanserverconnection;
      }catch(Exception ex){
      ex.printStackTrace();
      }
      return null;
    }
页: [1]
查看完整版本: JMX实现监控weblogic问题