2011-02-24 5 views
1

JSON을 통해 JBoss JMX 데이터에 액세스하는 방법이 있습니까?JSON을 통해 JBoss JMX 데이터에 액세스

많은 수의 서버의 데이터를 사용하여 관리 콘솔을 함께 가져 오려고합니다. 화면 스크래핑을 사용하여이 작업을 수행 할 수 있지만, JSON 객체 또는 XML 응답이 있으면이 객체를 사용하는 것을 선호하지만 하나를 찾을 수는 없습니다.

답변

3

JMX를위한 완벽한 기능의 JSON/HTTP 어댑터 Jolokia을 살펴보아야합니다. 다른 많은 플랫폼뿐만 아니라 JBoss에서도 지원되고 테스트되었습니다. Jolokia 은 일반적인 Java EE 전쟁으로 배포되는 에이전트이므로 JBoss 설치 내 deploy 디렉토리에 해당 에이전트를 놓기 만하면됩니다. 또한 일부 클라이언트 라이브러리 (예 : jmx4perl을 사용하면 에이전트에 프로그래밍 방식으로 액세스 할 수 있습니다.

발견 할 수있는 것이 많고, 적극적으로 개발되고 있습니다. more.

0

Java를 사용하는 경우 JMX가 JBoss 서버에 요청하고 XML/JSON으로 응답을 변환하는 작은 프로그램을 만들 수 있습니다.

다음은 작은 코드 단편입니다. 이것은 당신을 도울 수 있습니다.

String strInitialProp = "javax.management.builder.initial"; 
System.setProperty(strInitialProp, "mx4j.server.MX4JMBeanServerBuilder"); 
String urlForJMX = "jnp://localhost:1099";//for jboss 

ObjectName objAll = ObjectName.getInstance("*:*"); 
JMXServiceURL jmxUrl = new JMXServiceURL(urlForJMX); 
MBeanServerConnection jmxServerConnection = JMXConnectorFactory.connect(jmxUrl).getMBeanServerConnection(); 

System.out.println("Total MBeans :: "+jmxServerConnection.getMBeanCount()); 
Set mBeanSet = jmxServerConnection.queryNames(objAll,null); 
0

내부의 MBean에 JMX를 이야기하고 (데이터 형식으로 JSON을 제공 할 수 있습니다) REST 호출을 통해 결과를 노출하는 것이, 일부 JMX 받침대 다리를 사용할 수 있습니다.

polarrose 또는 jmx-rest-access. 거기에 몇 가지 다른 사람이 있습니다.

관련 문제