https://code.djangoproject.com/ticket/16245

Here's the quick summary:

send_robust() as you know is a special case of send() in the signals 
framework, which wraps each signal trigger in a try/except block so that an 
exception in one signal doesn't prevent the rest from firing.

This is great, but I've run into a problem when using this in production. 
The problem is that send_robust() does not capture the traceback at the 
point of the exception. As a result, though you can see which exception was 
raised, you can't see the traceback assocaited with that exception. This 
makes debugging exceptions that occur during send_robust extremely, 
extremely difficult.

I've contributed a patch to resolve this. In order to preserve backwards 
compatibility, my patch adds a kwarg append_traceback to send_robust() which 
allows one to optionally ensure the traceback is included. This seemed like 
the most straightforward solution that steps on the fewest toes, though in 
my opinion the traceback should be included by default and the old way 
deprecated.

The patch includes full tests and documentation. Right now it's stuck in 
design decision needed. Hopefully someone wouldn't mind taking a moment to 
review the ticket and patch and move it to ready for checkin. If there are 
concerns or questions or the patch need work I'd be happy to do what is 
required.

Many thanks...

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/django-developers/-/HdK-7gZdmSsJ.
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/django-developers?hl=en.

Reply via email to