Hi Andrew, One way to cope with the task you described is to use a debugger frontend such as EPIC. It allows you to set all the breakpoints in source files beforehand in the IDE, then it takes care of actually inserting those breakpoints at runtime whenever the right .pm files are loaded. It also includes an embedded web server through which the CGI scripts are executed (with the -d flag and PERLDB_OPTS set up to make them call back the IDE).
It is also possible to execute CGI scripts in the real web server and call back EPIC in a "remote debugging" configuration, but this would require some trickier configuration. Generally, I only use the debugger in a development environment, where the requirement of letting all requests go through a custom web server is not a big problem. The usual scenario is to start this web server (or, as it is called in Eclipse, a "debug launch configuration"), then issue the required user interactions in the browser to reach the interesting state, finally enable some breakpoints in the source code and repeat the problematic request from the browser to make the debugger suspend. Regards, Jan Ploski On Sat, Nov 28, 2009 at 04:05:35PM -0500, Andrew Brosnan wrote: > Hello, > > I'm curious about the strategies that others use for running more > complex applications in the debugger. A content management system for > example might require session data and user input in order to run it's > code, all of which gets processed along a journey through a large > stack. How can I do 'something' in a browser and then run that same > request in the debugger? > > I see that Apache::DB does something similar where you can initiate a > request in a browser and then control it in the debugger. But what if > the app is not running mod_perl? > > Thanks > Andrew