помощью декоратора на sys.excepthook, который передает туда вместо traceback - traceback.tb_next. Но эта собака (оригинальный ```sys.excepthook```) все равно вывела трейсбек целиком.
Может эксептхуки обсудим?
А ты его сам вызвал? Не могу понять, пока что...
Ага, я сделал свой хук, который вызывает оригинальный. Внутри моего происходят 2 вещи: обрезание трейсбека и вызов оригинального хука с передачей туда все тех же аргументов, но только вместо оригинального трейсбека - обрезанный. Но в консоль выводится по итогу все равно полный.
Хмм прикольно счас попробую воспроизвести
Не получилось воспроизвести?
попробовал - внутри эксептхука принтить tb_next вполне можно, через модуль трейсбек но дефолтный трейс выводится всё-равно - возможно его всё же что-то другое делает, что-то пока не понимаю можно конечно вообще дефолтный эксептхук не вызывать внутри переопределённого, тогда да - всё ок)
Ага, вот у меня те же выводы. Значит ссылка на трейсбек лежит где-то еще и дефолтный хук берет ее оттуда.
Обсуждают сегодня