2011-06-01 32 views
4

我一直在努力獲取像CPU,內存,網絡I/O,使用JMX的磁盤I/O等系統測試。如何通過JMX獲取網絡I/O和磁盤I/O

  • 對於CPU我已經使用了函數OperatingSystemMXBean.getSystemLoadAverage()並且獲得了CPU的負載。

  • 對於內存我已經使用了函數OperatingSystemMXBean.getTotalPhysicalMemorySize()和OperatingSystemMXBean.getFreePhysicalMemorySize()。

有沒有通過JMX獲取網絡I/O和磁盤I/O的功能?

回答

4

大多數虛擬機(全部?)不公開該數據。您需要使用像sigar這樣的庫(源代碼爲github),它可以收集這些值,然後通過JMX公開sigar的返回值。

我們在http://rhq-project.org/

0

使用SIGAR成功我發現SIGAR API將輕鬆獲得系統指標。