Use the traceback module: def log_exception(): """This function will log the current exception's traceback to logfile """ import traceback f = open("logfile", 'a') traceback.print_exc(32, f) f.close()
def my_func(): raise Exception def wrapper(): try: my_func() except Exception, e: log_exception() raise e On Jun 21, 11:54 pm, Samuel <[EMAIL PROTECTED]> wrote: > Hi, > > I am trying to wrap a function that throws an exeption in such a way > that the stacktrace is logged into a file and the exception is > forwarded after that. For example: > > ------------------- > def my_func(): > raise Exception("hello") > > def wrapper(): > try: > my_func() > except Exception, e: > f = open("logfile", 'a') > f.write(e.stacktrace()) > raise e > > wrapper() # should throw the exception with a stacktrace showing > my_func() > ------------------- > > Any idea if and how this can be done? > > -Samuel -- http://mail.python.org/mailman/listinfo/python-list