JMX对象如何映射到SNMP OID?

| 我有一个用Apache Camel编写的独立Java应用程序,我想通过SNMP进行监视。我认为Camel使用Spring的JMX(@ ManagedAttribute,@ ManagedResource等),我可以在JDK jconsole中看到各种与Camel相关的对象。在启用SNMP的情况下运行我的应用程序时:
-Dcom.sun.management.snmp.interface=127.0.0.1
-Dcom.sun.management.snmp.port=16101 
-Dcom.sun.management.snmp.acl=false
我可以用SNMP浏览器连接到它,在那里也可以看到很多东西。到目前为止,还不错,但是为了让我能够使用它,我需要了解或弄清楚如何将JMX对象映射到SNMP OID中。有没有办法知道它是如何完成的,或者至少是由谁来做的-Spring,JVM?有什么想法吗?     
已邀请:
我不是100%不确定我在Google上找到的信息(顺便说一句,首先点击eh!;))是否仍然有用,我也没有办法四处查看和验证(公司,已锁定的工作站...叹气!),但是,看起来默认的SNMP实现不是很可扩展。 根据\“ JVM监视:JMX或SNMP?\”,您只能访问JVM-MANAGEMENT-MIB.mib中定义的内容。 如果这件事同时发生,我会很感兴趣。     
我认为您不能通过SNMP公开带注释的Spring管理的bean。您列出的命令行参数仅用于监视有关JVM本身的指标,请参阅SNMP监视和管理;请参阅SNMP监视和管理。因此,可能没有办法找出OID,但您必须自己定义它们,大概是使用另一个成熟的SNMP框架或库。     
骆驼使用javax.management.MBeanServer注册mbean。我不记得我们做过与SNMP相关的任何事情。我认为JMX可以提供现成的集成,因为JVM具有应桥接到JMX的SNMPAgent。     

要回复问题请先登录注册