У меня есть raspberry pi
с кодом python
. Время от времени мои устройства не смогут зарегистрироваться. Остальная часть кода на Python продолжает работать отлично, но код здесь завершается. Я не уверен, почему? Если устройства не могут зарегистрироваться, они должны перезагрузиться, но они этого не делают. Другие потоки в файле python
продолжают работать правильно.Ошибка в потоке python
class reportStatus(Thread):
def run(self):
checkInCount = 0
while 1:
try:
if checkInCount < 50:
payload = {'d':device,'k':cKey}
resp = requests.post(url+'c', json=payload)
if resp.status_code == 200:
checkInCount = 0
time.sleep(1800) #1800
else:
checkInCount += 1
time.sleep(300) # 2.5 min
else:
os.system("sudo reboot")
except:
try:
checkInCount += 1
time.sleep(300)
except:
pass
Устройство может работать в течение нескольких дней и недель, и будет проверять в совершенстве через каждые 30 минут, а затем на ровном месте они остановятся. Мои компьютеры linux
доступны только для чтения, и компьютер продолжает работать и работать правильно. Моя проблема в этой теме. Я думаю, что они, возможно, не в состоянии получить ответ и эта линия может быть проблема
resp = requests.post(url+'c', json=payload)
Я не знаю, как решить эту проблему, любая помощь или предложения будут высоко оценены.
Спасибо
Исправить ваши отступы. –
Есть ли у вас трассировка вообще? Я бы не сказал, что запросы - это проблема, так как после этого есть исключение «catch all». –
Вставка для копирования вызвала ошибку отступа, она правильна в файле python. –