У меня есть скрипт, начатый с nohup python3 script.py &
.Это выглядит примерно так:
import thing
import anotherthing
logfile = "logfile {}".format(datetime.datetime.today())
while True:
try:
logging.debug("Started loop.")
do_some_stuff()
logging.debug("Stuff was done.")
except Exception as e:
logging.exception("message")
logging.debug("Starting sleep.")
time.sleep(60)
Это работает нормально, однако кажется, что зависает на time.sleep()
(так как в нем просто перестает делать что-либо без остановки процесса) примерно через 2 дня.Согласно журналам, все части скрипта выполняются нормально, но он всегда зависает в спящем режиме и не запускается снова.Я проверил на утечки памяти, зависания ввода-вывода и тайм-ауты соединения, и ни один из них, похоже, не имеет места.
Что может быть причиной такого поведения и почему?
РЕДАКТИРОВАТЬ: Добавленоведение журнала, чтобы точно определить причину.Журналы всегда заканчиваются на DEBUG Starting Sleep
.