Monitors Apache ActiveMQ via the collectd GenericJMX plugin.
Monitor Type: collectd/activemq
Accepts Endpoints: Yes
Multiple Instances Allowed: Yes
Config option | Required | Type | Description |
---|---|---|---|
host |
yes | string |
Host to connect to -- JMX must be configured for remote access and accessible from the agent |
port |
yes | integer |
JMX connection port (NOT the RMI port) on the application. This correponds to the com.sun.management.jmxremote.port Java property that should be set on the JVM when running the application. |
name |
no | string |
|
serviceName |
no | string |
This is how the service type is identified in the SignalFx UI so that you can get built-in content for it. For custom JMX integrations, it can be set to whatever you like and metrics will get the special property sf_hostHasService set to this value. |
serviceURL |
no | string |
The JMX connection string. This is rendered as a Go template and has access to the other values in this config. NOTE: under normal circumstances it is not advised to set this string directly - setting the host and port as specified above is preferred. (default: service:jmx:rmi:///jndi/rmi://{{.Host}}:{{.Port}}/jmxrmi ) |
instancePrefix |
no | string |
|
username |
no | string |
|
password |
no | string |
|
customDimensions |
no | map of strings |
Takes in key-values pairs of custom dimensions at the connection level. |
mBeansToCollect |
no | list of strings |
A list of the MBeans defined in mBeanDefinitions to actually collect. If not provided, then all defined MBeans will be collected. |
mBeansToOmit |
no | list of strings |
A list of the MBeans to omit. This will come handy in cases where only a few MBeans need to omitted from the default list |
mBeanDefinitions |
no | map of objects (see below) |
Specifies how to map JMX MBean values to metrics. If using a specific service monitor such as cassandra, kafka, or activemq, they come pre-loaded with a set of mappings, and any that you add in this option will be merged with those. See collectd GenericJMX for more details. |
The nested mBeanDefinitions
config object has the following fields:
Config option | Required | Type | Description |
---|---|---|---|
objectName |
no | string |
|
instancePrefix |
no | string |
|
instanceFrom |
no | list of strings |
|
values |
no | list of objects (see below) |
|
dimensions |
no | list of strings |
The nested values
config object has the following fields:
Config option | Required | Type | Description |
---|---|---|---|
type |
no | string |
|
table |
no | bool |
(default: false ) |
instancePrefix |
no | string |
|
instanceFrom |
no | list of strings |
|
attribute |
no | string |
The following table lists the metrics available for this monitor. Metrics that are marked as Included are standard metrics and are monitored by default.
Name | Type | Included | Description |
---|---|---|---|
counter.amq.TotalConnectionsCount |
counter | ✔ | Total connections count per broker |
gauge.amq.TotalConsumerCount |
gauge | ✔ | Total number of consumers subscribed to destinations on the broker |
gauge.amq.TotalDequeueCount |
gauge | Total number of messages that have been acknowledged from the broker. | |
gauge.amq.TotalEnqueueCount |
gauge | ✔ | Total number of messages that have been sent to the broker. |
gauge.amq.TotalMessageCount |
gauge | ✔ | Total number of unacknowledged messages on the broker |
gauge.amq.TotalProducerCount |
gauge | ✔ | Total number of message producers active on destinations on the broker |
gauge.amq.queue.AverageBlockedTime |
gauge | Average time (ms) that messages have spent blocked by Flow Control. | |
gauge.amq.queue.AverageEnqueueTime |
gauge | ✔ | Average time (ms) that messages have been held at this destination |
gauge.amq.queue.AverageMessageSize |
gauge | Average size of messages in this queue, in bytes. | |
gauge.amq.queue.BlockedSends |
gauge | Number of messages blocked by Flow Control. | |
gauge.amq.queue.ConsumerCount |
gauge | ✔ | Number of consumers subscribed to this queue. |
gauge.amq.queue.DequeueCount |
gauge | ✔ | Number of messages that have been acknowledged and removed from the queue. |
gauge.amq.queue.EnqueueCount |
gauge | ✔ | Number of messages that have been sent to the queue. |
gauge.amq.queue.ExpiredCount |
gauge | ✔ | Number of messages that have expired from the queue. |
gauge.amq.queue.ForwardCount |
gauge | Number of messages that have been forwarded from this queue to a networked broker. | |
gauge.amq.queue.InFlightCount |
gauge | ✔ | The number of messages that have been dispatched to consumers, but not acknowledged. |
gauge.amq.queue.ProducerCount |
gauge | ✔ | Number of producers publishing to this queue |
gauge.amq.queue.QueueSize |
gauge | ✔ | The number of messages in the queue that have yet to be consumed. |
gauge.amq.queue.TotalBlockedTime |
gauge | The total time (ms) that messages have spent blocked by Flow Control. | |
gauge.amq.topic.AverageBlockedTime |
gauge | Average time (ms) that messages have been blocked by Flow Control. | |
gauge.amq.topic.AverageEnqueueTime |
gauge | ✔ | Average time (ms) that messages have been held at this destination. |
gauge.amq.topic.AverageMessageSize |
gauge | Average size of messages on this topic, in bytes. | |
gauge.amq.topic.BlockedSends |
gauge | Number of messages blocked by Flow Control | |
gauge.amq.topic.ConsumerCount |
gauge | ✔ | The number of consumers subscribed to this topic |
gauge.amq.topic.DequeueCount |
gauge | Number of messages that have been acknowledged and removed from the topic. | |
gauge.amq.topic.EnqueueCount |
gauge | ✔ | The number of messages that have been sent to the topic. |
gauge.amq.topic.ExpiredCount |
gauge | ✔ | The number of messages that have expired from this topic. |
gauge.amq.topic.ForwardCount |
gauge | The number of messages that have been forwarded from this topic to a networked broker. | |
gauge.amq.topic.InFlightCount |
gauge | ✔ | The number of messages that have been dispatched to consumers, but have not yet been acknowledged. |
gauge.amq.topic.ProducerCount |
gauge | ✔ | Number of producers publishing to this topic. |
gauge.amq.topic.QueueSize |
gauge | ✔ | Number of messages in the topic that have yet to be consumed. |
gauge.amq.topic.TotalBlockedTime |
gauge | The total time (ms) that messages have spent blocked by Flow Control |
To specify custom metrics you want to monitor, add a metricsToInclude
filter
to the agent configuration, as shown in the code snippet below. The snippet
lists all available custom metrics. You can copy and paste the snippet into
your configuration file, then delete any custom metrics that you do not want
sent.
Note that some of the custom metrics require you to set a flag as well as add them to the list. Check the monitor configuration file to see if a flag is required for gathering additional metrics.
metricsToInclude:
- metricNames:
- gauge.amq.TotalDequeueCount
- gauge.amq.queue.AverageBlockedTime
- gauge.amq.queue.AverageMessageSize
- gauge.amq.queue.BlockedSends
- gauge.amq.queue.ForwardCount
- gauge.amq.queue.TotalBlockedTime
- gauge.amq.topic.AverageBlockedTime
- gauge.amq.topic.AverageMessageSize
- gauge.amq.topic.BlockedSends
- gauge.amq.topic.DequeueCount
- gauge.amq.topic.ForwardCount
- gauge.amq.topic.TotalBlockedTime
monitorType: collectd/activemq