Collectd — несколько портов JMX

Мне нужно собрать данные с помощью плагина JMX. Я хочу использовать одни и те же имена метрик, но собирать данные с разных портов JMX на одном хосте. Однако мне нужен способ различать, из какого процесса JMX собирает эти данные. В моих подключениях у меня указаны следующие блоки подключения (настроены разные порты). Есть ли способ настроить JMX для распечатки портов или какой-либо другой уникальной информации, чтобы сказать мне, откуда он собирает данные пула памяти? Использование разных Mbeans для каждого не вариант. Я хотел бы использовать некоторую форму тегов, чтобы идентификатор процесса или номер порта отправлялся как тег из 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>

person Sudo    schedule 03.08.2015    source источник


Ответы (1)


Начиная с версии 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

person yoshiwaan    schedule 12.07.2016