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

Как сделать Monkey patch для AsyncIO debug mode для детальной информации?

Я хочу отследить что блокирует мой event loop, я запускаю режим дебага asyncio.run(main(), debug=True), и поставил time.sleep() ради примера
Executing <Task pending name='Task-73' coro=<Dispatcher._process_update() running at /usr/local/lib/python3.12/site-packages/aiogram/dispatcher/dispatcher.py:309> wait_for=<Future pending cb=[Protocol._on_waiter_completed(), Task.task_wakeup()] created at /usr/local/lib/python3.12/site-packages/asyncpg/connection.py:1945> cb=[set.discard()] created at /usr/local/lib/python3.12/asyncio/tasks.py:420> took 2.108 seconds
он фиксирует, что есть тормоза, но логирует ужасно, как сделать monkey patch для того чтобы конкретно получить строку кода, которая тормозит, в нашем случае time.sleep? Я использую uvloop и python 3.12
  • Вопрос задан
  • 78 просмотров
Подписаться 1 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
  • Академия Эдюсон
    Python-разработчик
    9 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Python-разработчик + ИИ
    8 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
fenrir1121
@fenrir1121
Начни с документации
Поскольку судя по описанию задача найти проблему, порекомендую готовый инструмент yappi для профилирования асинк кода, чтобы не городить свой.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы
ITK academy Краснодар
от 220 000 до 300 000 ₽
ITK academy Краснодар
от 75 000 ₽
DimaTech Ltd Краснодар
от 140 000 до 140 000 ₽