-
Feature Request
-
Resolution: Unresolved
-
L3 - Default
-
None
-
None
-
None
-
None
User story
To prevent thread-bottlenecks, I want to observe the Camunda thread status of the job-executer.
Background
**The Job executed has its own thread-pool for which users want to optimally adjust the thread pool's max-threads and queue-length. Doing so without access to any statics requires "trial and error" and is hard to get right.
To be able to proactively scale the dimensions of the platform the Camunda job-executer runs on, users want to monitor the status of from within the job-executers thread-pool.
Access to the following metrics are requested:
- How many threads are currently in use by the pool?
- How many threads are busy vs idle?
- What is the size of the queue?
This is limited to what the underyling org.jboss.as.threads.ManagedQueueExecutorService exposes.
Acceptance criteria
- With the Wildfly CLI, users can access relevant metrics to monitor and optimize the job executors thread pool (similar to what is accessible for the default thread pool in the ejb subsystem)
- The scope of this ticket is the Wildfly/JBoss EAP distribution; other setups are not covered
Implementation hints
- We can have a look at the Wildfly sources for how this is implemented for the EJB thread pool (e.g. start points: https://github.com/wildfly/wildfly/tree/master/ejb3/src/main/java/org/jboss/as/ejb3/subsystem and https://github.com/wildfly/wildfly/blob/0780041b711baad2ce96668b2fbdb76ba91aa83b/ee/src/main/java/org/jboss/as/ee/subsystem/ManagedExecutorServiceMetricsAttributes.java (this defines the exposed attributes))
Example output for ejb thread pool:
[standalone@localhost:9990 thread-pool=default] ls active-count=0 max-threads=10 completed-task-count=0 name=default core-threads=undefined queue-size=0 current-thread-count=0 rejected-count=0 keepalive-time={"time" => 60L,"unit" => "SECONDS"} task-count=0 largest-thread-count=0 thread-factory=undefined
This is the controller panel for Smart Panels app
- is related to
-
CAM-14481 SPIKE - Metrics monitoring with Prometheus
- Closed