Re: redirriger stdout et stderr
m.banaouas a écrit :
> bonjour à tous,
>
> j'utilise le module smtplib et dans certains cas, l'envoi du message
> échoue. J'ai bien intercepté l'exception générée ainsi que le log
> (smtp_server.debuglevel=1) ce qui me fournit des info très utiles.
>
> Question: comment redirriger stdout et stderr vers un flux interne à mon
> script afin de le logger à mon tour et à ma façon?
>
> merci.
import sys
class FakeStream(object):
def __init__(self):
self._data = []
def write(self, val):
self._data.append(val)
def __str__(self):
return "".join(map(str, self._data))
sys.stdout = FakeStream()
sys.stderr = FakeStream()
|