Improving Debuggability of Complex Asyncio Applications
Offered By: PyCon US via YouTube
Course Description
Overview
Explore techniques for improving the debuggability of complex asyncio applications in this PyCon US talk. Learn about the challenges of observability and reproducibility in real-world asyncio applications, particularly when multiple libraries and code are combined. Discover aiomonitor-ng, an enhanced version of aiomonitor, which provides live access to running asyncio processes and offers new features like task creation and termination trackers. Gain insights into tracking silently swallowed cancellations and resource-hogging task floods. Examine case studies of successful production bug debugging using aiomonitor-ng, and understand how to create more stable, complex asyncio applications at scale. Delve into topics such as tracebacks in asyncio, task creation chain trackers, and solutions for "hard" problems in asyncio debugging.
Syllabus
Intro
About Lablup
Production debugging
Solutions for "hard" problems
Traceback in asyncio
Task creation chain tracker
Task termination tracker
Task cancellation chain tracker
Task termination & cancellation chain tracker
Case: Backend.Al "hangs"
Case: Backend.Al "hogs the CPU"
Case: Hidden bomb inside a 3 party dependency
Lessons
Future Work
Taught by
PyCon US
Related Courses
Get Organized: How to be a Together TeacherRelay Graduate School of Education via Coursera Concurrency
AdaCore via Independent Sprint Planning for Faster Agile Team Delivery
University System of Maryland via edX Introduction to Project Management with ClickUp
Coursera Project Network via Coursera Create a Project Charter in Google Sheets
Coursera Project Network via Coursera