Skip to main content

A dubugging & profiling toolkit for production Python microservices

Project description

Hawk Debug Toolkit For Python

Hawk: Debug & Profile

A lightweight debugging & profiling toolkit
for production 🐍 Python microservices

🦅 Hawk gives you more control over how your Python microservices run in production with little overhead by bringing a set of internal API to help you to profile and debug your services.

[!NOTE]

🚧 This project is under active development and not ready for production use yet. 🚧

Hawk is inspired by Go's net/http/pprof & expvars packages and OpenTelemetry Collector's ZPages which are in turn stemmed from Google's internal practices around debugging production services.

[!IMPORTANT]

Be sure to start this project and watch it if you find it helpful ⭐️

Features

  • ⏱️ Memory Profiling via the tracemalloc stdlib
  • ⏱️ CPU Profiling (incl. Asyncio services) via pyinstrument & cProfile (soon)
  • 🙋‍♀️ Activate profiling on demand in real environments
  • 🎨 Render your profiles right from your browser
  • ⬇️ Download your profiles for the further investigation
  • 🔭 Expose internal state of your service via debug vars (🚧soon)
  • 🔧 Create custom debug pages (a.k.a. ZPages) in a simplified way
  • 🔧 Controlled via environment variables, no codebase modifications needed to enable/disable functionality completely
  • 🔓 No elevated permissions needed (CAP_PTRACE, etc.)
  • 🔭 OpenTelemetry-aware (🚧soon)

Integrated With:

FastAPI Logo Starlette Logo Flask Logo

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hawk_debug-0.0.2.tar.gz (21.4 kB view details)

Uploaded Source

Built Distribution

hawk_debug-0.0.2-py3-none-any.whl (41.2 kB view details)

Uploaded Python 3

File details

Details for the file hawk_debug-0.0.2.tar.gz.

File metadata

  • Download URL: hawk_debug-0.0.2.tar.gz
  • Upload date:
  • Size: 21.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.18.2 CPython/3.9.20 Linux/6.8.0-1014-azure

File hashes

Hashes for hawk_debug-0.0.2.tar.gz
Algorithm Hash digest
SHA256 365567c54b2da27a33505683f0d05a536daa6a1c98bf723c21d33a5ea48b3e2f
MD5 9b6b8c4866b2911106afca9e17c8ef3a
BLAKE2b-256 c0e232218ef55397d8da3539183a493fbc59c0f2272add1296f3b5af7da1c27f

See more details on using hashes here.

File details

Details for the file hawk_debug-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: hawk_debug-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 41.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.18.2 CPython/3.9.20 Linux/6.8.0-1014-azure

File hashes

Hashes for hawk_debug-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9b32ce7e25d23e55c5ac9aad528ca0ed078f2ea646c99cecfa496f7bc63aacd6
MD5 a610c54d3e454a304c8db1d8cde446c1
BLAKE2b-256 9ed6b589266599f82ae333986508c0e2d503385f5991b92cebdc01c351ee918f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page