Сохранить Исключения для файла в python

Я хочу сохранить все следующие Исключения в файле. Причина, по которой мне это нужно, - это то, что IDLE для python 3.1.1 в Ubuntu вызывает исключение в calltipps, но близко к быстрому, что он не является readble. Также мне нужно это для тестирования. Лучше всего было бы, если бы я просто вызвал функцию, которая сохраняет все исключение в файл. Спасибо!;)

//edit:

Я смотрел сначала на более общий путь! так что вам не нужно размещать весь код в функции или отступе. но теперь это сработало хорошо для меня. хотя я был бы все равно благодарен, если вы найдете способ!

спасибо!

Ответы

Ответ 1

Если у вас есть удобная функция main() (независимо от того, что она называется), вы можете использовать модуль ведения журнала:

import logging

def main():
    raise Exception("Hey!")

logging.basicConfig(level=logging.DEBUG, filename='/tmp/myapp.log')

try:
    main()
except:
    logging.exception("Oops:")

logging.exception удобно получает текущее исключение и помещает данные в журнал:

ERROR:root:Oops:
Traceback (most recent call last):
  File "C:\foo\foo.py", line 9, in <module>
    main()
  File "C:\foo\foo.py", line 4, in main
    raise Exception("Hey!")
Exception: Hey!