Trigger a pdb in a running zope via a USR1 signal
Project description
Introduction
This package allows one to perform various debugging and development actions on a running Zope instance. In order to perform an action one must:
Insert a command into a special control file. To determine which file to look in, mr.freeze will take the Zope pid file and replace the extension with ‘.freeze’. So in a typical buildout the control file would be var/instance.freeze
Send a USR1 signal to the Zope instance.
This pattern is intended to support integration with editors like TextMate and emacs, but that hasn’t been implemented yet.
Commands
The following commands are currently supported in both debug and non-debug mode.
- stack
Will dump a stack backtrace for all threads to the console. (Default command if unable to read freeze file.)
- pony
Will dump a pony to the console.
The following commands are supported in debug mode only.
- freeze
Will drop Zope to a pdb debug prompt.
- freeze [file] [line #]
Will set a pdb breakpoint on the specified line.
The following commands are planned.
- reload code
Will reload code that has been modified.
- reload zcml
Will reload code and ZCML that has been modified.
Editor integration
Please see r82128 for some preliminary information regarding TextMate integration or watch the quick demo screen cast.
Credits
David Glick
Andreas Zeidler
Thanks to those who have helped provide the foundation for this package:
Products.signalstack: Wichert Akkerman
Products.PDBDebugMode: Ross Patterson
z3c.deadlockdebugger: Malthe Borch
DeadlockDebugger: Florent Guillaume
threadframe: Fazal Majid
Changelog
1.0a3 (2009-03-19)
Fix the adjusted patch from 1.0a2 so that we actually return responses. :-> [davisagli]
1.0a2 (2009-03-19)
Be a little more careful about patching ZPublisher’s call_object, so that we can coexist with PDBDebugMode.
Use canonical path of files passed to the freeze command.
Fixes for TextMate integration script. [witsch]
1.0a1 (2009-03-12)
Add script to help integrate with TextMate. Please see http://dev.plone.org/collective/changeset/82128 for some preliminary info. [witsch]
Initial release [davisagli]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.