@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
  • Вопрос задан
  • 57 просмотров
Пригласить эксперта
Ответы на вопрос 1
fenrir1121
@fenrir1121
Начни с документации
Поскольку судя по описанию задача найти проблему, порекомендую готовый инструмент yappi для профилирования асинк кода, чтобы не городить свой.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы