On Feb 7, 2010, at 11:09 PM, Pavel Skvazh wrote:

> As far as I can see it, the reason is fairly simple - all of this info
> is kept in memory and cleaned upon stoping the server. Is there any
> way to preserve it? I'm aware that debug URLs are only meant for
> development and not for production, still the interactive debug is too
> good to abandon it, so I rewrote some of the pylons error handling to
> make it display the regular 500 page to the user, but still create a
> interactive debug and send the link to it to the email.

To retain the state of the environment after a restart would require the 
ability to serialize the Python state. This is actually why Python web 
frameworks (unless using a C extension or Stackless Python, which allow for 
interpreter state serialization) can't use true continuations either.

Unless you're willing to use Stackless Python, and rewrite WebError to use its 
facilities to save the state of the Python interpreter, I'm afraid there's no 
way to resume stopped tracebacks that I'm aware of.

Also, I'd suggest putting some security on the _debug URL's as well, relying 
purely on obscurity and hoping no one finds them isn't a very good idea. :)

Note that by default, I believe WebError holds on to about 20 debug sessions at 
a time before removing any of them (kind of vague on whether it removes them 
now that I think about it...), so depending on whats in the traceback scope 
your process may eat up quite a bit more ram.

Cheers,
Ben

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/pylons-discuss?hl=en.

Reply via email to