Skip to main content

Overview

Live Debugger is a library for CPython that allows to collect stacktrace data from running processes in production environments without stopping the world. The library provides safe building blocks and concepts for developers to collect stack snapshot from processes. It is designed to be minimal and extensible. It also makes no assumptions on what the process plans to do with the collected data, focusing only on providing immutable safe data.

The debugger implementation uses CPython debugging functions available in the standard library to intercept function call and collect stack frames data. Stackframes are transformed into immutable data structures so no harm can be done to the running process.

The main benefits of using this library are:

  • Free (as in freedom)

  • Depends only on CPython standard libraries

  • Easy to extend

  • Easy to use

  • Small codebase

Installation

This library is available in PyPI so you can install it as a normal Python package:

pip install live-debugger

Usage

>>> from live_debugger import api
>>> cookie = api.add_point("flask_example/app.py", 33, print)
>>> api.clear_point(cookie)

Next

  • Async support

  • Anonymization

Credits

  • Yunier Rojas García

  • ChatGPT – for helping me writing this README

License

AGPL v3

Release files for live-debugger 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for live-debugger 0.1.0
File Size Uploaded
live_debugger-0.1.0.tar.gz 18.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for live-debugger 0.1.0
File Interpreter ABI Platform
live_debugger-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 40.3 kB

Release files / live_debugger-0.1.0.tar.gz

Download URL live_debugger-0.1.0.tar.gz
Size 18.9 kB
Tags Source
SHA-256 checksum
How to use checksums
102809dc64118690dd00c89fff21d71afdd3dd6fd269e043d3f51eb365f91366
BLAKE2b-256 checksum
How to use checksums
60b142b8ad01642b6ef681d0c4ad8acf357d3f2c5222b60f35018c816110477f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.9.6 readme-renderer/37.3 requests/2.28.2 requests-toolbelt/0.10.1 urllib3/1.26.14 tqdm/4.64.1 importlib-metadata/6.0.0 keyring/23.13.1 rfc3986/2.0.0 colorama/0.4.6 CPython/3.8.16

Release files / live_debugger-0.1.0-py3-none-any.whl

Download URL live_debugger-0.1.0-py3-none-any.whl
Size 21.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
70694e45dddb08a446e1796f38039c58f861863f3d3b7da2a033696597c54776
BLAKE2b-256 checksum
How to use checksums
4023db531ed8c0c0c0331d384ae218b96084eeb375dbbb130fac4fff255ae890
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 pkginfo/1.9.6 readme-renderer/37.3 requests/2.28.2 requests-toolbelt/0.10.1 urllib3/1.26.14 tqdm/4.64.1 importlib-metadata/6.0.0 keyring/23.13.1 rfc3986/2.0.0 colorama/0.4.6 CPython/3.8.16

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page