JmxExporter.java 文件源码

java
阅读 29 收藏 0 点赞 0 评论 0

项目:ajp-client 作者:
/**
 * get an mbean instance for a remote jmx-enabled jvm.
 * 
 * @param jmxServerUrl
 *            jmx service url, for example
 *            <code>service:jmx:rmi:///jndi/rmi://:9999/jmxrmi</code>
 * @param host
 *            channel pool's tcp host
 * @param port
 *            channel pool's tcp port
 * @return a proxy for the monitor associated with the pool
 */
public static ChannelPoolMonitorMBean getMonitor(String jmxServerUrl, String host, int port) throws IOException {
    ObjectName objectName = null;
    try {
        objectName = makeObjectName(host, port);
    } catch (MalformedObjectNameException e) {
        throw new IllegalArgumentException(e);
    }

    JMXServiceURL url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://:9999/jmxrmi");
    JMXConnector jmxc = JMXConnectorFactory.connect(url, null);

    MBeanServerConnection mbsc = jmxc.getMBeanServerConnection();

    Set<ObjectInstance> set = mbsc.queryMBeans(objectName, null);
    if (set == null || set.isEmpty()) {
        return null;
    } else {
        return MBeanServerInvocationHandler.newProxyInstance(mbsc, objectName, ChannelPoolMonitorMBean.class, true);
    }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号