Sto provando a scaricare un elenco di tutti i thread attivi incluso lo stack corrente di ciascuno. Posso ottenere una lista di tutti i thread usando threading.enumerate(), ma non riesco a capire un modo per arrivare allo stack da lì.Stack stack di tutte le discussioni attive
Sfondo: Un'app Zope/Plone impazzisce di tanto in tanto, consuma il 100% della CPU e deve essere riavviata. Ho la sensazione che sia un loop che non termina correttamente, ma non posso riprodurlo nel test-environment per la verifica. Sono riuscito a registrare un gestore di segnale che può essere attivato dall'esterno, quindi posso attivare un codice non appena la situazione si ripresenta. Se potessi scaricare lo stacktrace per tutti i thread attivi, questo mi darebbe un'idea di cosa va storto. La cosa buco eseguito su Python 2.4 ...
Tutte le idee su come rintracciare situazioni come queste sono apprezzati :)
Cheers, Chriss
Grazie mille, questo è esattamente ciò di cui ho bisogno! – Chriss
Al giorno d'oggi in Plone "non sono necessari pacchetti speciali" http: // StackOverflow.it/a/36633215/3046069 – Danimal
@Danimal: grazie, aggiunto al post. 2.12.5 è stato rilasciato un anno dopo aver scritto questa risposta. –