Retorcido: ¿cómo obtener los parámetros de error de error?

Tengo un pedazo de código:

from twisted.web.client import getPage from twisted.internet import reactor class TestError(Exception): def __init__(self, message): self.message = message def __repr__(self): return 'TestError' def gotPage(response): print response reactor.stop() def gotErr(failure): raise TestError('This is error') def newEb(failure): try: failure.raiseException() except TestError as te: print te.message reactor.stop() if __name__ == '__main__': deferred = getPage('http://somebadpage.net', method='GET') deferred.addCallback(gotPage) deferred.addErrback(gotErr) deferred.addErrback(newEb) reactor.run() 

¿La forma presentada en newEb es la única forma de extraer los parámetros de error de la falla? Cuando utilizo failure.trap o failure.check no puedo recibir la instancia de error.

Si por parámetros de error se Failure.value instancias de excepción, entonces Failure.value .