Collect the connection pool performance, usage and availability metrics for JBoss, identify potential issues with the utilization of the connection pool, and monitor both Non-XA and XA connection pools.
Connection Pools allow you to monitor connection pool performance and identify issues such as connection leaks.
Several built-in OneAgent extensions provide an insight into the connection pool performance and issues such as connection leaks. The extensions cover the following technologies: Apache Tomcat, Oracle WebLogic, IBM WebSphere Application Server, IBM WebSphere Liberty, and Red Hat JBoss and Wildfly.
Java Metric Extensions 2.0 (JMX).This extension package contains :
This extension is built on top of the new Extension 2.0 Framework.
There is no charge to use the extension. You are only charged for the data that the extension ingests.
The Connection Pools JBoss extension ingests custom metrics, which consume Davis Data Units (DDUs) (Dynatrace classic license) or Metrics powered by Grail (DPS), according to your license model.
This extension queries for data every minute. To estimate the amount of metric datapoints produced by your extension configuration, use the following list which gives you a number of metrics per feature set and a multiplier value depending on the number of connection pools being monitored. Add all of these up, and you will have the number of datapoints produced every minute.
Connection pool time XA: 9 x number of connection pools.Connection pool XA: 5 x number of connection pools.Connection pool: 5 x number of connection pools.Connection pool time: 9 x number of connection pools.For example, a monitoring configuration that contains one connection pool where all feature sets are activated produces 28 metric datapoints per minute.
Since JMX Extensions run on OneAgent-monitored hosts, they are subjected to included metrics per host unit. Refer to the following documentation depending on the license type:
In the Dynatrace Platform Subscription, metric ingestion consumes Metrics powered by Grail according to the number of ingested metric data points.
To calculate the approximate yearly consumption, apply the following calculation: <metric data points per minute> * 60 minutes * 24 hours * 365 days.
For the example above: 28 * 60 * 24 * 365 = 14,716,800 metric data points per year.
In the classic licensing model, metric ingestion consumes Davis Data Units (DDUs) at the rate of .001 DDUs per metric data point. Multiply the above formula for annual data points by .001 to estimate annual DDU usage.
For the example above: 28 * 60 * 24 * 365 * 0.001 = 14,716.8 DDUs per year.
The DDU cost above does not include any possible log events or custom events that are triggered by the extension. For more information, see DDU events.
When activating your extension using a monitoring configuration, you can limit monitoring to one of the feature sets. To work properly, the extension has to collect at least one metric after the activation.
In highly segmented networks, feature sets can reflect the segments of your environment. Then, when you create a monitoring configuration, you can select a feature set and a corresponding ActiveGate group that can connect to this particular segment.
All metrics that aren't categorized into any feature set are considered to be the default and are always reported.
A metric inherits the feature set of a subgroup, which in turn inherits the feature set of a group. Also, the feature set defined on the metric level overrides the feature set defined on the subgroup level, which in turn overrides the feature set defined on the group level.
| Metric name | Metric key | Description |
|---|---|---|
| Max pool size | jboss.connectionPool.maxPoolSize | — |
| Active count | jboss.connectionPool.ActiveCount | — |
| Available count | jboss.connectionPool.AvailableCount | — |
| Created count | jboss.connectionPool.CreatedCount.count | — |
| Destroyed count | jboss.connectionPool.DestroyedCount.count | — |
| Idle count | jboss.connectionPool.IdleCount | — |
| In use count | jboss.connectionPool.InUseCount | — |
| Timed out | jboss.connectionPool.TimedOut.count | — |
| Wait count | jboss.connectionPool.WaitCount.count | — |
| Metric name | Metric key | Description |
|---|---|---|
| Max pool size (XA) | jboss.connectionPool.maxPoolSizeXA | — |
| Active count (XA) | jboss.connectionPool.ActiveCountXA | — |
| Available count (XA) | jboss.connectionPool.AvailableCountXA | — |
| Created count (XA) | jboss.connectionPool.CreatedCountXA.count | — |
| Destroyed count (XA) | jboss.connectionPool.DestroyedCountXA.count | — |
| Idle count (XA) | jboss.connectionPool.IdleCountXA | — |
| In use count (XA) | jboss.connectionPool.InUseCountXA | — |
| Timed out (XA) | jboss.connectionPool.TimedOutXA.count | — |
| Wait count (XA) | jboss.connectionPool.WaitCountXA.count | — |
| Metric name | Metric key | Description |
|---|---|---|
| Total blocking time (XA) | jboss.connectionPool.TotalBlockingTimeXA.count | — |
| Total get time (XA) | jboss.connectionPool.TotalGetTimeXA.count | — |
| Total creation time (XA) | jboss.connectionPool.TotalCreationTimeXA.count | — |
| Total usage time (XA) | jboss.connectionPool.TotalUsageTimeXA.count | — |
| Total pool time (XA) | jboss.connectionPool.TotalPoolTimeXA.count | — |
| Metric name | Metric key | Description |
|---|---|---|
| Total blocking time | jboss.connectionPool.TotalBlockingTime.count | — |
| Total creation time | jboss.connectionPool.TotalCreationTime.count | — |
| Total pool time | jboss.connectionPool.TotalPoolTime.count | — |
| Total get time | jboss.connectionPool.TotalGetTime.count | — |
| Total usage time | jboss.connectionPool.TotalUsageTime.count | — |