Я отладочной комплексную программу, которая имеет блок так:Как определить происхождение исключения Python
try:
lots()
of()
deeply()
nested()
code()
except BaseException as e:
log_error(str(e))
Сообщение об ошибке, выходит только Config file missing
, но это не очень помогает мне.
Мне очень хотелось бы узнать, откуда именно это сообщение. (Обратите внимание, что строка ошибки из внешней программы, так что это не для поиска.)
Если я использую traceback
я только получаю, чтобы увидеть трассировки стека после он был намотан назад к обработчику, который не является полезным , Я хотел бы увидеть трассировку в источнике исключения.
Любые идеи?
Спасибо!
«Если я использую отслеживающий я получаю только увидеть трассировки стека после того, как она была намотана обратно к проводнику» - вы, вероятно, с помощью 'traceback' неправильный. Этот модуль делает именно то, что вы ищете. – user2357112
Удалите попытку/исключение - тогда ошибка приведет к немедленной трассировке иерархии вызовов для консоли. Но да, я согласен с @ user2357112, что вы должны использовать трассировку неправильно. – barny
Итак, в тестовом файле я вижу, что он делает именно то, что вы предлагаете. Это здорово. Мне просто нужно выяснить, почему он не работает в моей реальной программе. – Michael