aiodebug
A tiny library for monitoring and testing asyncio programs
Decision gist · record as of 2026-08-14
No. While the library is lightweight and addresses real asyncio debugging needs, it is abandoned (last release 2022-01-04) with no active maintenance. Given the rapid evolution of Python and asyncio since then, compatibility with current Python versions is uncertain. Use only if you are already running an older codebase that depends on it; for new projects, seek actively maintained alternatives.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.8 or higher; no support for older versions.
- Low install friction with a single lightweight dependency (typing-extensions).
- However, the package is abandoned—last release was 2022-01-04, over 1683 days ago.
License · maintenance · safety
Apache 2.0 (permissive) — Licensed under Apache 2.0 (permissive), which allows commercial and private use with minimal restrictions. No licensing concerns for adoption.
last release 2022-01-04 (1683 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 270,616 downloads/mo, #8,232 on PyPI
Alternatives
Verify before relying
pip install aiodebug
import aiodebug.log_slow_callbacks
aiodebug.log_slow_callbacks.enable(0.05)- Whether the package works reliably with current Python 3.10+ asyncio implementations given the 1683-day gap since last release.
- Whether hang_inspection's stack trace dumping works correctly on modern Python and threading implementations.
- Compatibility with modern async frameworks that may have evolved since 2022-01-04.
What it is and what it does
aiodebug is a small library for observing and testing asyncio event loops. It provides four main tools: log_slow_callbacks warns when tasks block the event loop beyond a threshold, monitor_loop_lag tracks scheduling delays and sends them to StatsD, hang_inspection dumps stack traces when the event loop stalls, and TimeDilatedLoop speeds up or slows down time for testing. The library is designed to run in production with minimal overhead, though it can also be used for development and testing.
The package depends only on typing-extensions and optionally uses logwood for structured logging if available, falling back to Python's standard logging. It supports Python 3.8, 3.9, and 3.10 but has not been maintained since 2022-01-04, meaning it may not work correctly with newer Python releases or asyncio behavior changes.
Use it for
- Detect and log when asyncio tasks block the event loop beyond a threshold in production.
- Track event loop scheduling lag and send metrics to StatsD for monitoring system responsiveness.
- Diagnose which thread is blocking the event loop by dumping stack traces when hangs occur.
- Speed up or slow down time in event loops during unit tests to verify timeout and delay behavior.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
No.
While the library is lightweight and addresses real asyncio debugging needs, it is abandoned (last release 2022-01-04) with no active maintenance. Given the rapid evolution of Python and asyncio since then, compatibility with current Python versions is uncertain. Use only if you are already running an older codebase that depends on it; for new projects, seek actively maintained alternatives.
Install
aiodebug on PyPI
Before you install
Low install friction with a single lightweight dependency (typing-extensions). However, the package is abandoned—last release was 2022-01-04, over 1683 days ago. No active maintenance or security updates.
Requires Python 3.8 or higher; no support for older versions.
License in practice
Licensed under Apache 2.0 (permissive), which allows commercial and private use with minimal restrictions. No licensing concerns for adoption.
Quickstart
pip install aiodebug
import aiodebug.log_slow_callbacks
aiodebug.log_slow_callbacks.enable(0.05)
Verify before relying
- Whether the package works reliably with current Python 3.10+ asyncio implementations given the 1683-day gap since last release.
- Whether hang_inspection's stack trace dumping works correctly on modern Python and threading implementations.
- Compatibility with modern async frameworks that may have evolved since 2022-01-04.
Package facts
| License | Apache 2.0 permissive |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packagetyping-extensions |
| Maintenance | Abandoned 1,683 days since the last release |
| First released | |
| Downloads | 270,616 / month, #8,232 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | License :: OSI Approved :: Apache Software LicenseNatural Language :: EnglishProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: aiodebug-2.3.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “event loop performance monitoring”
- aiodebugaiodebug provides monitoring and testing utilities for asyncio…
- aiocopDetects and logs blocking I/O and CPU calls in asyncio code using…
- nv-one-logger-pytorch-lightning-integrationAdds training telemetry collection to Lightning applications via…
Give your agent the search over MCP, or paste the wish link into any chat.
More Testing packages
Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.
Install it if you're building an extensible application or framework.
pytest is a testing framework that lets you write test functions using plain assert statements and automatically discovers and runs them, with detailed failure reporting.
virtualenv creates isolated Python environments where packages can be installed independently without affecting the system Python or other projects.
Coverage.py measures which lines of Python code are executed during test runs, reporting coverage percentages and identifying untested code paths.
Install it if you want to measure test completeness or enforce coverage thresholds in your project.
pytest-asyncio is a pytest plugin that enables writing and running async test functions using the asyncio library, allowing developers to await code directly within test cases.
Install it if you write tests for any asyncio-based code.
A pytest plugin that generates test reports in Common Test Report Format (CTRF) as JSON, compatible with pytest-xdist and pytest-playwright for distributed and browser-based testing.
Install it if you need CTRF-formatted test output for CI/CD integration or cross-tool reporting.
See also pyleak · hud-sdk · simple-pid · aiojobs · aiosignal · aiocop · asynctest · aiorun · aioodbc · py-spy