Metricbeat for ActiveMQ

Hi, I'm currently working on getting metrics from AWS activemq, but I can't get it on how to install jolokia module. Any idea?
We are using a cloud Elasticsearch instance, and we apply our metricbeat using kubernetes yaml file.

Reference: ActiveMQ module | Metricbeat Reference [7.16] | Elastic

All you need is to enable activeMQ module in metricbeat as follow

# Module: activemq
# Docs: https://www.elastic.co/guide/en/beats/metricbeat/7.16/metricbeat-module-activemq.html

- module: activemq
  metricsets: ['broker', 'queue', 'topic']
  period: 10s
  hosts: ['10.10.1.1:8161']
  path: '/api/jolokia/?ignoreErrors=true&canonicalNaming=false'
  username: admin # default username
  password: admin # default password

Just make sure is exposing jolokia API under the URL

http://10.10.1.1:8161/api/jolokia/?ignoreErrors=true&canonicalNaming=false

1 Like

Yep, but how to add the jolokia module?

Do you means how to add ActiveMQ module to metricbeat ?
Check : Jolokia module | Metricbeat Reference [7.16] | Elastic

Or how to enable monitoring in ActiveMQ via Jolokia ?
Check : ActiveMQ

Yep, I want to add activemq to metricbeat. In the docs said it requires jolokia. How can I install the jolokia module in my cloud kibana using terraform sir?

This is nothing to do with Kibana
All you need is to enable Metricbeat ActiveMQ module or Jolokia Module but this need to be done on metricbeat not on Kibana.
I suppose you have already installed Metricbeat somewhere (On a lnux host) and you need to tell metricbeat where to collect ActiveMQ/Jolokia metrics and where to send them (Elasticsearch) and then you can view them in Kibana.

Let me know if that make sense to you ?

Yep, I've installed it and metricbeat is working fine. I just want to know how to enable the Jolokia module. Jolokia module | Metricbeat Reference [7.16] | Elastic

Copy sir, right now I'm finished adding the jolokia module, but when I check the logs it shows these lines.

This is the yml file.

- module: jolokia
      metricsets: ["jmx"]
      enabled: true
      period: 10s
      hosts: ["localhost:8080"]
      namespace: "jolokia_metrics"
      path: "/jolokia"
      http_method: 'GET'
      jmx.mappings:
        - mbean: 'java.lang:type=Memory'
          attributes:
          - attr: HeapMemoryUsage
            field: memory.heap_usage
          - attr: NonHeapMemoryUsage
            field: memory.non_heap_usage
        - mbean: 'Catalina:name=*,type=ThreadPool'
          attributes:
          - attr: port
            field: catalina.port
          - attr: maxConnections
            field: catalina.maxConnections
        - mbean: 'java.lang:type=Runtime'
          attributes:
          - attr: Uptime
            field: uptime

Is your JMS installed on localhost:8080 ?

I haven't installed JMX yet.

The jmx metricset collects metrics from Jolokia agents. as said on the document. Jolokia jmx metricset | Metricbeat Reference [7.16] | Elastic

And to install Jolokia agents, I'll follow this guide? Chapter 3. Agents

I am not sure how to do this for ActiveMQ
But for knowledge, ActiveMQ include already jolokia module
Try to specifiy hosts and path as follow

hosts: ['active_mq_ip_or_hostname:8161']
path: '/api/jolokia/?ignoreErrors=true&canonicalNaming=false'

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.