2015-04-17 169 views
0

我正在使用Jboss EAP 6.3,並且希望mornitor服務器健康,現在遇到了一個問題:我創建了兩個數據源(「ExampleDS」和「ExampleDS2」) 。是否有人知道如何通過使用jmx Mbean獲取帶有列表的jdbc數據源名稱以及jms名稱?如何獲取Jboss 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") 

回答

0

您可以使用jconsole(MBeans選項卡),列出所有的MBean在本地Java進程。從那裏,您可以瀏覽JMX樹來查找您的jmx數據源和jms名稱。

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

通過JMS你的意思是一個JMS消息隊列名稱:在

你的數據源會被發現? JMX名稱將爲

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