У меня есть какой-то модуль логгера, который я написал (он наследует от logging.Logger
, но я не думаю, что это важная деталь для обсуждения)
Я хочу написать окончательное сообщение перед выходом, этосообщение будет содержать информацию о том, сколько времени прошло с момента запуска скрипта, и так далее.Он должен работать при нормальном завершении работы скрипта, при вызове sys.exit()
и при возникновении необработанного исключения (например, сбой assert).
Я не уверен, как правильно это сделать.Я рассматриваю возможность использования global, который напишет сообщение при __del__
, но я знаю, что в python это не всегда вызывается.Я подумал об использовании atexit
, но я не уверен, гарантированно ли он будет вызван, и будут ли доступны импортированные модули (я также хочу записывать свои сообщения на удаленный сервер).
Я использую Python3.7