The threads middleware, when put into the pipeline, allows you to visit a /debug_threads URL, which provides a plaintext report representing the state of each currently running thread in the process. This is useful for debugging deadlocks. The threads middleware uses code from the Deadlock Debugger package by Florent Guillame.
Wire up the middleware in your application:
from repoze.debug.threads import MonitoringMiddleware
middleware = MonitoringMiddleware(app)
Use the ‘egg:repoze.debug#threads’ entry point in your Paste configuration, e.g.:
[pipeline:main]
pipeline = egg:Paste#cgitb
egg:repoze.debug#threads
myapp
The middleware accepts no configuration parameters.