2010-10-14 66 views
2

我想監控(通過SNMP)的幾個JBoss的MBean的一些屬性是我的系統上運行的SNMP監控:的MBean(attributes.xml在SNMP-adaptor.sar)(JBoss的)

我已經配置我的attributes.xml unders SNMP的adaptor.sar包括:

<mbean name="jboss.ha:service=HASingletonDeployer">  
     <attribute name="MasterNode" oid=".1.2.3.4.1.22"/> 
     <attribute name="PartitionName" oid=".1.2.3.4.1.23"/> 
     <attribute name="TargetStopMethodArgument" oid=".1.2.3.4.1.24"/> 
     <attribute name="TargetName" oid=".1.2.3.4.1.25"/> 
     <attribute name="State" oid=".1.2.3.4.1.26"/> 
     <attribute name="StateString" oid=".1.2.3.4.1.27"/> 
     <attribute name="ClusterPartition" oid=".1.2.3.4.1.28"/> 
</mbean> 

但隨着我的MIB瀏覽器,我只能做成功一個get()StringInt屬性。布爾或對象將返回一個SNMP錯誤。所以,適配器甚至不會爲這些情況「發佈」OID。

對於我上面的列表,MasterNode,TargetNameClusterPartition在SNMP get()上失敗,其餘都成功。

對此的任何解決方法?

的更多信息:從org.jboss.ha.singleton.HASingletonController JMX控制檯:

(名稱/類型)

  • TargetName javax.management.ObjectName
  • StateString java.lang.String
  • MasterNode boolean
  • ClusterPartition org.jboss.ha.framework.server.ClusterPartitionMBean
  • TargetStartMethod java.lang.String
  • TargetStartMethodArgument java.lang.String
  • State int
  • TargetStopMethodArgument java.lang.String
  • PartitionName java.lang.String

(等等)

回答

1

JBoss的SNMP適配器具有用於將Java類型映射到SNMP類型非常原始的邏輯。它可以處理String,Integer,Long,這就是它。部分原因在於SNMP的可用類型範圍非常狹窄(例如,它沒有布爾值),部分原因是SNMP適配器尚未得到很好的開發。

有一個向RedHat提交的issue關於此事,但同時您可以選擇重寫SNMP適配器(畢竟它是開源的),或者編寫重新公開所需信息的MBean爲String/Long/Integer(例如,將布爾值顯示爲1或0)。

+0

嗨skaffman,你能指點我的方向,我可以寫我自己的MBean並獲得該信息。我寫了這個bean,並將這個條目添加到attributes.xml中,但是我找不到如何將這個bean添加到SLEE中。 !即那個Bean永遠不會出現在jmx-console中。 – 2015-12-03 05:35:41