Size: a a a

Telegram Developers

2020 November 08

Е

Ева in Telegram Developers
Tishka17
А ты уверена, что исключение возникает здесь?
Угу
<FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\main.py, line 169 in add_product_command>
Трейсбек указывает на эту строку
источник

T

Tishka17 in Telegram Developers
Ева
Угу
<FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\main.py, line 169 in add_product_command>
Трейсбек указывает на эту строку
Покажи целиком ошибку
источник

Е

Ева in Telegram Developers
Tishka17
Покажи целиком ошибку
ERROR:root:!!! FROM [<FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\modules\database.py, line 30 in execute>, <FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\main.py, line 169 in add_product_command>, <FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\venv\lib\site-packages\aiogram\dispatcher\handler.py, line 117 in notify>, <FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\venv\lib\site-packages\aiogram\dispatcher\dispatcher.py, line 246 in process_update>, <FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\venv\lib\site-packages\aiogram\dispatcher\handler.py, line 117 in notify>, <FrameSummary file C:\Python\Python 3.9.0\lib\asyncio\events.py, line 80 in _run>, <FrameSummary file C:\Python\Python 3.9.0\lib\asyncio\base_events.py, line 1890 in _run_once>, <FrameSummary file C:\Python\Python 3.9.0\lib\asyncio\base_events.py, line 596 in run_forever>, <FrameSummary file C:\Python\Python 3.9.0\lib\asyncio\windows_events.py, line 316 in run_forever>, <FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\venv\lib\site-packages\aiogram\utils\executor.py, line 312 in start_polling>, <FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\venv\lib\site-packages\aiogram\utils\executor.py, line 41 in start_polling>, <FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\main.py, line 87 in main>, <FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\start.py, line 4 in <module>>] !!!
           INSERT INTO product_creation(user_id)
           VALUES(?);
           
Traceback (most recent call last):
 File "D:\PycharmLib\EasypayPaymentTelegramBot\modules\database.py", line 25, in execute
   self.__cursor.execute(query, parameters)
sqlite3.IntegrityError: UNIQUE constraint failed: product_creation.user_id
источник

T

Tishka17 in Telegram Developers
А почему у тебя такие странные трейсы?
источник

T

Tishka17 in Telegram Developers
Я вот второй день смотрю на них и не понимаю
источник

T

Tishka17 in Telegram Developers
Ева
ERROR:root:!!! FROM [<FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\modules\database.py, line 30 in execute>, <FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\main.py, line 169 in add_product_command>, <FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\venv\lib\site-packages\aiogram\dispatcher\handler.py, line 117 in notify>, <FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\venv\lib\site-packages\aiogram\dispatcher\dispatcher.py, line 246 in process_update>, <FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\venv\lib\site-packages\aiogram\dispatcher\handler.py, line 117 in notify>, <FrameSummary file C:\Python\Python 3.9.0\lib\asyncio\events.py, line 80 in _run>, <FrameSummary file C:\Python\Python 3.9.0\lib\asyncio\base_events.py, line 1890 in _run_once>, <FrameSummary file C:\Python\Python 3.9.0\lib\asyncio\base_events.py, line 596 in run_forever>, <FrameSummary file C:\Python\Python 3.9.0\lib\asyncio\windows_events.py, line 316 in run_forever>, <FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\venv\lib\site-packages\aiogram\utils\executor.py, line 312 in start_polling>, <FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\venv\lib\site-packages\aiogram\utils\executor.py, line 41 in start_polling>, <FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\main.py, line 87 in main>, <FrameSummary file D:\PycharmLib\EasypayPaymentTelegramBot\start.py, line 4 in <module>>] !!!
           INSERT INTO product_creation(user_id)
           VALUES(?);
           
Traceback (most recent call last):
 File "D:\PycharmLib\EasypayPaymentTelegramBot\modules\database.py", line 25, in execute
   self.__cursor.execute(query, parameters)
sqlite3.IntegrityError: UNIQUE constraint failed: product_creation.user_id
logging.exception юзаешь или руками трейс форматируешь?
источник

Е

Ева in Telegram Developers
log.error(f"!!! FROM {traceback.StackSummary.extract(traceback.walk_stack(None))} !!!" + query, exc_info=e.args[0])
источник

🤔T

🤔 Thoughtful in Telegram Developers
Ева
log.error(f"!!! FROM {traceback.StackSummary.extract(traceback.walk_stack(None))} !!!" + query, exc_info=e.args[0])
Читаемо (нет)
источник

Е

Ева in Telegram Developers
🤔 Thoughtful
Читаемо (нет)
?
источник

A

Aryn in Telegram Developers
🤔 Thoughtful
Читаемо (нет)
Очень
источник

Е

Ева in Telegram Developers
Aryn
Очень
?
источник

UN

User Name in Telegram Developers
Гайз, где найти этот метод???
Чет не понял
У меня в .types нету такого метода
aiogram-2.10.1
источник

🤔T

🤔 Thoughtful in Telegram Developers
User Name
Гайз, где найти этот метод???
Чет не понял
У меня в .types нету такого метода
aiogram-2.10.1
Это явно не метод
источник

UN

User Name in Telegram Developers
Ну или класс
источник

Е

Ева in Telegram Developers
🤔 Thoughtful
Читаемо (нет)
Вместо того, чтобы критиковать
Лучше помогите
Я понимаю, что здесь читаемость -100
Но я сейчас не за читаемость бьюсь
источник

Е

Ева in Telegram Developers
User Name
Ну или класс
Ну да, какой-то тип
источник

T

Tishka17 in Telegram Developers
Ева
log.error(f"!!! FROM {traceback.StackSummary.extract(traceback.walk_stack(None))} !!!" + query, exc_info=e.args[0])
Ух. Делай лучше logging.exception("some str"), он сам трейс отформатирует
источник

Е

Ева in Telegram Developers
Tishka17
Ух. Делай лучше logging.exception("some str"), он сам трейс отформатирует
У меня просто над sqlite3 надстройка Database и там я уже делаю коммиты, запросы и др.
источник

T

Tishka17 in Telegram Developers
Ева
Я не правильно построила try—except?
Он не отлавливает исключение

try:
       db.execute(
           '''
           INSERT INTO product_creation(user_id)
           VALUES(?);
           ''',
           (message.from_user.id,)
       )
except sqlite3.IntegrityError:
       pass

А вот то исключение, которое он не отлавливает и выводит в консоль:
sqlite3.IntegrityError: UNIQUE constraint failed
Это 87 строка?
источник

T

Tishka17 in Telegram Developers
Ева
У меня просто над sqlite3 надстройка Database и там я уже делаю коммиты, запросы и др.
Не важно, я только про логи сейчас. И код логирования станет проще и вывод красивее
источник