Schedule demo

Monitoring JMX metrics


With APM Insight Java agent, you can track Java Management Extensions (JMX) metrics. Although we monitor and enhance application performance using transaction metrics and traces, it is equally important to monitor the environment where your application is running. Moreover, monitoring JMX metrics helps you gain additional insights.

Default JMX metrics

By default, JMX metrics are captured from APM Insight Java agent version 5.1, and can be viewed under App Parameters tab. Since JMX metrics are specific to app servers, metrics captured by default in various servers are listed below.

MetricsTomcatJBoss ASWildFlyGlassFishWebLogicWebSphere ASWebSphere Liberty profileJetty
Session
Data Source
Thread pool
Transactions (JTA)
Buffer Pool
File Descriptor Count

Enabling JMX metrics

To enable capturing of JMX metrics, follow the steps given below:

  1. Log into your Applications Manager account.
  2. Navigate to the APM tab → Your application → Edit → APM Insight Application Configuration Profile.Applications Manager APM Insight Java agent Monitoring JMX metrics: Editing APM Insight Agent configuration profile.
  3. Click on Edit and enable Capture JMX metrics under Background transactions.Applications Manager APM Insight Java agent Monitoring JMX metrics: Enabling JMX metrics monitoring If you do not want to monitor JMX Metrics you can disable the Capture JMX metrics checkbox under the APM tab → Your application → Action → Edit → APM Insight Application Configuration Profile → Background transactions.
  4. Finally, click Save. You can now view the JMX metrics under the App Parameters tab.Applications Manager APM Insight Java agent Monitoring JMX metrics: JMX metrics tracking in App Parameters

Custom JMX metrics

Apart from the default metrics, you can also capture additional metrics by following the below given steps:

  1. Create a new file jmx_extensions.conf in agent directory.
  2. Add the JMX query in the following format:

    <Query_Name><Name_of_Metric><Comma_separated_Attributes>
    • You can add wildcard (*) to the queries.
    • You can also use the keys for naming the metrics by enclosing them with {}.
  3. Add each JMX in a new line.

Examples:

1. java.lang:type=OperatingSystemjava.lang-OperatingSystemOpenFileDescriptorCount

Agent monitors attribute OpenFileDescriptorCount and it will be named as java.lang-OpenFileDescriptorCount

2. java.nio:type=BufferPool,name=*java.nio-BufferPool-{name}MemoryUsed, TotalMemory

The result of above query is that the agent monitors all the beans under the Buffer Pool, and will monitor the attributes memory used and total memory. This will be named as java.nio-BufferPool-Direct-MemoryUsed, etc.

Note: Spaces in the query name should be escaped with a backslash (\) before them so that the agent can properly parse the entire query string. In the below example, the whitespace between Pool and (HikariPool-1) has been escaped because "Pool (HikariPool-1)" is a complete name in itself.

com.zaxxer.hikari:type=Pool\ (HikariPool-1) com.zaxxer.hikari.PoolActiveConnections, TotalConnections

Disabling JMX metrics

If you do not want to monitor JMX metrics, you can disable the Capture JMX metrics checkbox under Configuration Profile → Edit APM agent configuration profile → Background transactions.

Thank you for your feedback!

Was this content helpful?

We are sorry. Help us improve this page.

How can we improve this page?
Do you need assistance with this topic?
By clicking "Submit", you agree to processing of personal data according to the Privacy Policy.

Loved by customers all over the world

"Standout Tool With Extensive Monitoring Capabilities"

It allows us to track crucial metrics such as response times, resource utilization, error rates, and transaction performance. The real-time monitoring alerts promptly notify us of any issues or anomalies, enabling us to take immediate action.

Reviewer Role: Research and Development

carlos-rivero
"I like Applications Manager because it helps us to detect issues present in our servers and SQL databases."
Carlos Rivero

Tech Support Manager, Lexmark

Trusted by over 6000+ businesses globally