Hack day project. Figure out if the main thread is hanging, and if so, what's causing it to hang.
Python
Latest commit f7d8489 Sep 6, 2013 @ggreer Merge pull request #4 from AMeng/master
Added setup.py

README.md

Usage

from twisted_hang import HangWatcher
watcher = HangWatcher(0.1, 0.5) # these params are optional. They have sane defaults
watcher.start()

Stuff will magically get printed out if the main thread hangs for more than MAX_DELAY seconds. If you want more info, add something like this after the lines above:

from twisted.internet import task
# Print stats every 60 seconds
lc = task.LoopingCall(watcher.print_stats)
lc.start(60)