Improving debuggability of complex asyncio applications
summary
Covers aiomonitor-ng, a next-generation debugging tool for Python asyncio that extends the original aiomonitor. Describes concrete features: a telnet-accessible live REPL plus new task creation and termination trackers that record stack traces (including chained/nested traces), and a richer async TUI built with prompt_toolkit and Click to improve inspection and autocomplete for production debugging of complex asyncio apps.
AI-written summary · about
chapters (14)
- 0:00Intro
- 1:39About Lablup
- 3:24Production debugging
- 4:36Solutions for "hard" problems
- 7:11Traceback in asyncio
- 11:43Task creation chain tracker
- 13:37Task termination tracker
- 15:01Task cancellation chain tracker
- 16:03Task termination & cancellation chain tracker
- 20:18Case: Backend.Al "hangs"
- 22:43Case: Backend.Al "hogs the CPU"
- 23:53Case: Hidden bomb inside a 3 party dependency
- 24:52Lessons
- 26:46Future Work
related talks
32mEnhancing AsyncIO for Complex Applications
25mZoom, Enhance: Asyncio's New Introspection Powers
40mAdvanced asyncio: Solving Real-world Production Problems
32mAdvanced asyncio: Solving Real-World Production Problems
26mA Year of Observability Across the Toolstack: Breakthroughs, Challenges, Improveme...
40mOptimizing AI Applications for Production with Observability
23mPractical usage of asyncio
24mLet’s Rethink Debugging
