我需要使用JMX插件收集数据。我想使用相同的度量标准名称,但是从单个主机上的不同JMX端口收集数据。但是,我需要一种方法来区分JMX从中收集数据的过程。在我的连接中,我指定了以下连接块(配置了不同的端口)。有没有办法配置JMX打印出端口或其他一些独特的信息告诉我它从哪里收集内存池数据?不能选择使用不同的Mbeans。我想使用某种形式的标记,因此进程ID或端口号作为Collectd的标记发送出去。感谢您提前的时间
<Connection>
Host "localhost"
ServiceURL "service:jmx:rmi:///jndi/rmi://localhost:17264/jmxrmi"
Collect "memory_pool"
</Connection>
<Connection>
Host "localhost"
ServiceURL "service:jmx:rmi:///jndi/rmi://localhost:9095/jmxrmi"
Collect "memory_pool"
</Connection>
答案 0 :(得分:0)
从插件5.0版开始,您可以将InstancePrefix部分放入Connection块
<Connection>
Host "localhost"
ServiceURL "service:jmx:rmi:///jndi/rmi://localhost:17264/jmxrmi"
Collect "memory_pool"
InstancePrefix "port17264"
</Connection>
详细信息请参见“连接阻止”部分:https://collectd.org/wiki/index.php/Plugin:GenericJMX