I know of no tool that will tell you that short of logging.
That being said, there are a number of generic advice and things to look for here: Why have my Rules stopped running? Why Thread::sleep is a bad idea
tl;dr look for Thread::sleeps, long running Actions like executeCommandLine and sendHttp*Request, locks, and inadvertent feedback loops.
If you are running out of threads, you have at least one Rule that is taking longer to run than it is being invoked, or you have at least one Rule that is failing to exit.