2010-08-31 83 views

回答

2

我相信你可以通過RMI-IIOP連接到JMX服務,我相信這是Java的CORBA。我相信這意味着您可以使用任何COBRA客戶端連接到RMI-IIOP Java服務。請查看JBoss IIOP,我相信這只是你想要的,只有它是JBoss特有的。

也許使用JAX-WS或JAX-RS(即Web服務)簡單地包裝要導出的JMX服務可能更容易?然後你可以使用普通的'HTTP來訪問你想要的東西。

其實it seems someone has done exactly that!我想你想獲得的東西,如:

  • http://<host>:<port>/rest/jmx/java.lang:type=Memory/NonHeapMemoryUsage/commited

整個項目可在https://opendmk.dev.java.net/contributions/rest-adaptor/readme.html

寧靜的JMX適配器

該項目 OpenDMK貢獻提供了一個HTTP 以RestFul方式訪問JMX信息。發表在the JMX NetBeans blog的一篇文章,詳細介紹了 的方法。

另一個(一樣嗎?)的項目可在https://ws-jmx-connector.dev.java.net/

+0

heh - 我最後偶然做了一個簡單的RESTful事件(幾行代碼),但這很好理解!畢竟我沒有瘋狂! – 2010-09-01 06:18:51

2

對於Nagios的監控JMX jmx4perl是一個完美的解決方案,因爲它具有豐富的Nagios插件check_jmx4perl功能已經來了。它使用Jolokia,它是通過JSON/HTTP橋接JMX的代理程序,並具有高級功能,如細粒度安全性或批量請求,這些功能不適用於傳統的JSR-160連接器。它也在積極開發之中,而上述REST方法似乎在2008年停滯不前(這也是2009年5月啓動jmx4perl的原因)。順便說一句,JSR-262「用於Java管理擴展(JMX)代理的Web服務連接器」很不幸地處於「非活動狀態」,因此我不期望從這方面取得很多進展。

+0

很高興知道,謝謝。我很喜歡納吉奧斯,它已被證明是非常值得信賴的。 – 2011-01-26 23:27:08