Проектирую скрипты для сохранения различных данных.
Часто это занимает длительное время и периодически возникают ошибки сохранения мелких данных, которые не критичны, но при этом каждая такая ошибка вызывает Exception и остановку программы. СТоит ли каждое действие по умолчанию обернуть в try/except и Print(exception),чтобы избежать остановок программы и чем это грозит?
Про потерю некоторых данных это ясно и не страшно, а что еще может произойти и что делать в таких случаях?
Upd:
Вот я написал функцию
def reconnect(self):
self.conn=psycopg2.connect(database=database,user=user,password=password,host=host,port=port)
self.cur=self.conn.cursor()
Я вызываю ее только в случае Exception при сохранении в базу.
Только вопрос как быть, если мы попробовали сделать reconnect, но и в этот раз не получилось.
Получается мы должны убедиться перед подключением, что connect к PosgreSQl вообще есть или лучше зациклить проверку пока не будет коннекта к базе.
Есть ли такая возможность? Но получается лучше не делать это перед каждым запросом, так как это займет доп время. У меня так
try:
db.save.alltickerprices(cg.coins)
except Exception:
#Тут по идее нужно сделать цикл с проверкой существует ли сейчас поключение?
db.reconnect()