Home

debugging_zope_ipython

Updated:
Created:

how to get a decent debugging environment

As written elsewhere (http://zopewiki.org/ZEO), you can setup zope to use zeo, and then start a debugging session with zopectl debug Problem: you get only a very limited shell. Solution: * Install ipython * Modifiy one single line of zopectl: *** Zope-2.8.5-final/lib/python/Zope2/Startup/zopectl.py 2005-12-19 08:25:56.000000000 +0100 --- ../zope/Zope-2.8.5/lib/python/Zope2/Startup/zopectl.py 2006-02-12 19:16:20.000000000 +0100 *************** *** 167,169 **** def do_debug(self, arg): ! cmdline = self.get_startup_cmd(self.options.python + ' -i', 'import Zope2; app=Zope2.app()') --- 167,170 ---- def do_debug(self, arg): ! #cmdline = self.get_startup_cmd(self.options.python + ' -i', ! cmdline = self.get_startup_cmd('/usr/bin/ipython -i', 'import Zope2; app=Zope2.app()') run .../zopectl/debug Use tab completion, code insight etc. Thanks to tav for this! Addition: Put ModuleSecurityInfo('pdb').declarePublic('set_trace') somewhere in a Module Put into some ttw code (python): from pdb import set_trace set_trace() Start ipython in debug mode Type Zope2.debug('/hello',d=1,u='joerg:baach') (Debugging the url /hello, using the username and password) You are in pdb Goto http://www.zope.org/Members/klm/ZopeDebugging/ConversingWithZope http://zopewiki.org/DebuggingWithPdb http://www.zope.org/Documentation/Books/ZDG/current/TestingAndDebugging.stx http://docs.python.org/lib/debugger-commands.html and tell me what to do with it ;-) From #zope.de 14:52 < TinoW> do3cc: zopectl debug -> import Zope,pdb -> pdb.runeval('Zope.debug("/pfad/zum/object?blah=foo")',globals(),locals())