Задать вопрос
comandante_ss
@comandante_ss

Как сделать обработчик ошибок iogram python?

Делаю тг бота, и он довольно сложный, иногда возникают ошибки (не в работе самого бота а функций)
Как можно НОРМАЛЬНО сделать обработчик ошибок т.е при возникновении ошибки не останавливать бота, а перезапускать
  • Вопрос задан
  • 1772 просмотра
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
kshnkvn
@kshnkvn
yay ✌️ t.me/kshnkvn
Как то ты сильно неправильно делаешь бота.
Обработчики команд в aiogram асинхронные и если в функции случается ошибка это никак не влияет на поток выполнения, то есть бот останавливаться не должен в принципе.
Но раз уж у тебя это, каким то образом, происходит, то в консоле должна быть ошибка. Смотришь на ошибку, устраняешь ошибку, бот больше не падает.
Если все совсем плохо (возможно из-за того, что бот "довольно сложный"), то запихни процесс пуллинга в бесконечный цикл примерно так:

import logging


while True:
    try:
        executor.start_polling(dispatcher=dispatcher, skip_updates=True)
    except (KeyboardInterrupt, SystemExit):
        break
    except Exception:
        logging.exception('polling error')

Но лучше конечно ошибки фиксить.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы