用java能实现对weblogic的监控吗?我已经用JMS实现了对weblogic的server Name,Listen Port,webApp的名称、domain名称。现在想实现对weblogic的执行线程(executeQueue)、集群(cluster)、堆(heap)等,不知道应该怎么实现?

题目
用java能实现对weblogic的监控吗?

我已经用JMS实现了对weblogic的server Name,Listen Port,webApp的名称、domain名称。现在想实现对weblogic的执行线程(executeQueue)、集群(cluster)、堆(heap)等,不知道应该怎么实现?


相似考题
参考答案和解析

能,用jmx ,google一下这方面知识,由于从weblogic8升级到weblogic9发生了比较大的变化,以前对于weblogic8比较熟悉的人,也许到了weblogic9就不一定熟悉了,还需要了解才行,特别是监控方面差别比较大,由于9采用的jdk版本是1.5,监控8实现的java方式就不能用于9了。

就目前我得测试结论是:java实现weblogic的自定义监控对于9和10都是适用的,但是对于11却没有测试,还不知道方式是否相同,实际上从文档里面也可以看出,8系列是采用的许多管理的MBean接口在9中已经不推荐使用,标明是过时的了。

我这次通过java编程来实现weblogic9的自定义监控就发现,很多地方完全地不同了。

从界面上来看,已经完全不同于8,命令行监控方式也有一些大的变化。

这是我取得监控接口封装的类:

package lht.monitor.weblogic.main9;

import java.io.IOException;
import java.net.MalformedURLException;
import java.util.Hashtable;

import javax.management.MBeanServerConnection;
import javax.management.MalformedObjectNameException;
import javax.management.ObjectName;
import javax.management.remote.JMXConnector;
import javax.management.remote.JMXConnectorFactory;
import javax.management.remote.JMXServiceURL;
import javax.naming.Context;

public class SetEnvironment {
 protected static MBeanServerConnection connection;  
 private static JMXConnector connector;  
 private static final ObjectName service;  
 // Initializing the object name for DomainRuntimeServiceMBean  
 // so it can be used throughout the class.  
 static {     
  try {       
    service = new ObjectName( "com.bea:Name=DomainRuntimeService,Type=weblogic.management.mbeanservers.domainruntime.DomainRuntimeServiceMBean");
   }catch (MalformedObjectNameException e) {
    throw new AssertionError(e.getMessage());
   } 
  } 
 /*
  * Initialize connection to the Domain Runtime MBean Server
  */ 
 public static void initConnection(String hostname, String portString,String username, String password) throws IOException,  MalformedURLException {      
  String protocol = "t3";     
  Integer portInteger = Integer.valueOf(portString);     
  int port = portInteger.intValue();     
  String jndiroot = "/jndi/";     
  String mserver = "weblogic.management.mbeanservers.domainruntime";
  JMXServiceURL serviceURL = new JMXServiceURL(protocol, hostname, port, jndiroot + mserver);
  Hashtable hash = new Hashtable();     
  hash.put(Context.SECURITY_PRINCIPAL, username);
  hash.put(Context.SECURITY_CREDENTIALS, password);
  hash.put(JMXConnectorFactory.PROTOCOL_PROVIDER_PACKAGES,"weblogic.management.remote");
  connector = JMXConnectorFactory.connect(serviceURL,hash);
  connection = connector.getMBeanServerConnection();
 }
  /*     
   *  This MBean is the root of the runtime MBean hierarchy, and 
   *  each server in the domain hosts its own instance.  
   */
 public static ObjectName[] getServerRuntimes(String servername,String hostname, String portString,String username, String password) throws Exception{   
  ObjectName[] bj = (ObjectName[])connection.getAttribute(service,servername);
  return obj;
 }
}

更多“用java能实现对weblogic的监控吗? ”相关问题
  • 第1题:

    下列不属于Java语言鲁棒性特点的是 ( )

    A.Java能检查程序在编译和运行时的错误

    B.Java能运行虚拟机实现跨平台

    C.Java自己操纵内存减少了内存出错的可能性

    D.Java还实现了真数组,避免了覆盖数据的可能


    正确答案:B
    解析:Java鲁棒性的特点如下:Java在编译和运行程序时都要对可能出现的问题进行检查,以防止错误的产生。Java编译器可以查出许多其他语言运行时才能发现的错误。Java不支持指针操作,大大减少了错误发生的可能性。Java具有异常处理的功能,当程序异常时,它能捕获并响应意外情况,以保证程序能稳妥地结束,计算机系统不会崩溃。而Java能运行虚拟机实现跨平台是Java的与平台无关性的特点。所以本题选B。

  • 第2题:

    用二极管也能组成逆变电路,对吗?


    错误

  • 第3题:

    【填空题】在Java中,能实现线程间通信的流是____。


    管道流

  • 第4题:

    weblogic与webshphere的描述哪个是不正确的:()

    A. 它们都是实现J2EE规范的软件产品

    B. 它们都属于java中间件产品

    C. 它们都是位于前端和后端数据库之间负责业务逻辑处理和展示的

    D. 它们都必须用图形方式安装


    参考答案D

  • 第5题:

    宿舍楼都有监控,没人会偷东西,偷了也能找回来,所以不用锁门。这种想法对吗?


    B