Re: How to show traceback of "Unhandled error"?

Jason Litzinger <[email protected]>
Newsgroups gmane.comp.python.twisted
Message-ID <[email protected]>
> Try this:
> 
> 
> from twisted.logger import globalLogBeginner, textFileLogObserver
> from twisted.internet.defer import Deferred
> import sys
> 
> globalLogBeginner.beginLoggingTo([textFileLogObserver(sys.stdout)])
> 
> def raiseErr(what):
>     raise Exception(what)
> 
> d = Deferred()
> d.addCallback(raiseErr)
> d.callback("asdf")
FWIW, I had some trouble (nothing printed) with Python 3.6 using the
example above.  Python 2 was fine, and PYTHONUNBUFFERED (or flush) didn't help.
I'll follow up should I figure out what's going on.  I had success on
Python3 with the STDLibLogObserver...which doesn't make any immediate
sense other than something flushing related.
> 
> 
> 
> https://twistedmatrix.com/trac/ticket/9333
> 
> The associated PR needs a careful review to ensure its handling of unicode is correct.  Any takers?
Agree, given the recent tickets/regressions related to Unicode I'm going
to go back through my PR.  If it disappears from review...I found
something.
> > 
> > # how to show the traceback without manually adding an errback at the end?
> > # adding at the *end* of a deferred is hard as we don't know when the
> > client stops adding callbacks.
I've also found this advice from Jean-Paul very helpful:
https://twistedmatrix.com/pipermail/twisted-python/2018-March/031856.html

You'll get more detailed info:
CRITICAL:twisted:Unhandled error in Deferred:
CRITICAL:twisted:(debug:  C: Deferred was created:
 C:  File "foo.py", line 15, in <module>
 C:    d = defer.Deferred()
 I: First Invoker was:
 I:  File "foo.py", line 17, in <module>
 I:    d.callback("asdf")
)
Traceback (most recent call last):
  File "/home/jlitzing/dev/twisted/twisted-fork/src/twisted/internet/defer.py", line 653, in _runCallbacks
    current.result = callback(current.result, *args, **kw)
  File "foo.py", line 13, in raiseErr
    raise Exception(what)
Exception: asdf

Cheers,
-Jason

_______________________________________________
Twisted-Python mailing list
[email protected]
https://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.