Do not merge yet, this is just for initial discussion.
This PR contains code that watches the thread pools for the different dispatchers in an actor system. This is particularly useful if some of the dispatchers wrap around a lot of blocking calls.
It introduces several new aspects:
akka.pool.thread.count the current thread count in the pool (FJ, TP)
akka.pool.running.thread.count the "busy" threads in the pool (FJ, TP)
akka.pool.queued.task.count the total number of queued tasks (FJ, TP)
akka.pool.size the pool size (FJ, TP)
The aspects are tagged with the actor paths, types, and two new tags in form of: akka.system:$SYSTEM_NAME, and akka.dispatcher:$DISPATCHER_ID, where $SYSTEM_NAME is the ActorSystem's name, and $DISPATCHER_ID is the Akka Dispatcher id.
Note that this is a brand new aspect DispatcherMonitoringAspect, which should be included in the META-INF/aop.xml configuration file to see it working. See the aop.xml file in example-akka for default settings.
Do not merge yet, this is just for initial discussion.
This PR contains code that watches the thread pools for the different dispatchers in an actor system. This is particularly useful if some of the dispatchers wrap around a lot of blocking calls.
It introduces several new aspects:
akka.pool.thread.count
the current thread count in the pool (FJ, TP)akka.pool.running.thread.count
the "busy" threads in the pool (FJ, TP)akka.pool.queued.task.count
the total number of queued tasks (FJ, TP)akka.pool.size
the pool size (FJ, TP)The aspects are tagged with the actor paths, types, and two new tags in form of:
akka.system:$SYSTEM_NAME
, andakka.dispatcher:$DISPATCHER_ID
, where$SYSTEM_NAME
is theActorSystem
's name, and$DISPATCHER_ID
is the AkkaDispatcher
id.See http://doc.akka.io/docs/akka/snapshot/scala/dispatchers.html for dispatcher configuration and further discussion of the dispatchers.
Note that this is a brand new aspect
DispatcherMonitoringAspect
, which should be included in theMETA-INF/aop.xml
configuration file to see it working. See theaop.xml
file inexample-akka
for default settings.