Collect the connection pool performance, usage and availability metrics for Apache Commons.
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, Red Hat JBoss and Apache Commons.
When activating your extension using 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 borrow wait duration | apache.commons.connectionPool.maxBorrowWaitDuration | Gets the maximum time a thread has waited to borrow objects from the pool |
| Max wait duration | apache.commons.connectionPool.maxWaitDuration | Gets the maximum duration the borrowObject() method should block before throwing an exception when the pool is exhausted and getBlockWhenExhausted() is true. When less than 0, the borrowObject() method may block indefinitely |
| Mean active duration | apache.commons.connectionPool.meanActiveDuration | Gets the mean time objects are active for based on the last MEAN_TIMING_STATS_CACHE_SIZE objects returned to the pool |
| Mean borrowed wait duration | apache.commons.connectionPool.meanBorrowWaitDuration | Gets the mean time threads wait to borrow an object based on the last MEAN_TIMING_STATS_CACHE_SIZE objects borrowed from the pool |
| Mean idle duration | apache.commons.connectionPool.meanIdleDuration | Gets the mean time objects are idle for based on the last MEAN_TIMING_STATS_CACHE_SIZE objects borrowed from the pool |
| Min evictable idle duration | apache.commons.connectionPool.minEvictableIdleDuration | Gets the minimum amount of time an object may sit idle in the pool before it is eligible for eviction by the idle object evictor. When non-positive, no objects will be evicted from the pool due to idle time alone. |
| Metric name | Metric key | Description |
|---|---|---|
| Borrowed count | apache.commons.connectionPool.borrowedCount.count | Gets the total number of objects successfully borrowed from the pool |
| Created count | apache.commons.connectionPool.createdCount.count | Gets the total number of objects created for this pool |
| Destroyed count | apache.commons.connectionPool.destroyedCount.count | Gets the total number of objects destroyed by this pool |
| Max total | apache.commons.connectionPool.maxTotal | Gets the maximum number of objects that can be allocated by the pool (checked out to clients, or idle awaiting checkout) at a given time. When negative, there is no limit to the number of objects that can be managed by the pool at one time |
| Idle count | apache.commons.connectionPool.numIdle | Gets the number of instances currently idle in this pool |
| Active count | apache.commons.connectionPool.numActive | Gets the number of instances currently borrowed from this pool. Returns a negative value if this information is not available |
| Waiters count | apache.commons.connectionPool.numWaiters | Gets an estimate of the number of threads currently blocked waiting for an object from the pool |
| Returned count | apache.commons.connectionPool.returnedCount.count | Gets the total number of objects returned to this pool over the lifetime of the pool. This excludes attempts to return the same object multiple times |