Estoy tratando de volcar una lista de todos los hilos activos, incluida la pila actual de cada uno. Puedo obtener una lista de todos los hilos utilizando threading.enumerate(), pero no puedo encontrar una manera de llegar a la pila desde allí.Volcar stacktraces de todos los hilos activos
Antecedentes: una aplicación Zope/Plone se asusta de vez en cuando, consume el 100% de la CPU y necesita reiniciarse. Tengo la sensación de que es un ciclo que no termina correctamente, pero no puedo reproducirlo en el entorno de prueba para su verificación. Me las arreglé para registrar un controlador de señal que se puede activar desde el exterior, por lo que puedo activar algún código tan pronto como la situación vuelva a ocurrir. Si pudiera volcar el stacktrace para todos los hilos activos, eso me daría una pista de lo que sale mal. Lo agujero se ejecuta en Python 2.4 ...
Cualquier ideas sobre cómo rastrear hasta situaciones como estas se aprecian :)
Saludos, Chriss
Muchas gracias, esto es exactamente lo que necesito. – Chriss
Hoy en día en Plone "no se necesitan paquetes especiales" http: // stackoverflow.com/a/36633215/3046069 – Danimal
@Danimal: gracias, agregado a la publicación. 2.12.5 fue lanzado un año después de que escribí esta respuesta. –