如何获取Jboss jdbc数据源节点名称和jms节点名称

时间:2015-04-17 07:32:57

标签: jboss-eap-6 jython-2.7

我正在使用Jboss EAP 6.3,我希望mornitor服务器健康,现在我遇到了一个问题:我创建了两个数据源(“ExampleDS”和“ExampleDS2”)。有没有人知道如何使用jmx Mbean获取带有列表的jdbc数据源名称以及jms名称?

现在我可以通过remoteJmx获取serverName和serverState。

def getServerState():
    serviceURL = javax.management.remote.JMXServiceURL("service:jmx:remoting-jmx://localhost:9999"))
    connector = javax.management.remote.JMXConnectorFactory.connect(serviceURL, None)
    connection = connector.getMBeanServerConnection()

    service = javax.management.ObjectName("jboss.as:management-root=server")
    serverName = connection.getAttribute(service,"name")
    serverState = connection.getAttribute(service,"serverState")

1 个答案:

答案 0 :(得分:0)

您可以使用jconsole(mbeans选项卡)列出本地java进程中的所有mbeans。从那里,您可以浏览JMX树以查找您的jmx数据源和jms名称。

您的数据源位于:

jboss.as:subsystem=datasources,data-source=ExampleDS

通过JMS,您的意思是JMS消息队列名称吗? JMX名称将是

jboss.as:subsystem=messaging,hornetq-server=default,jms-queue=ExampleQueueName