Skip to main content

Official Python SDK for AllStak — error tracking, structured logs, HTTP + DB monitoring, distributed tracing, and cron monitoring with first-class FastAPI, Django and Flask support

Project description

allstak

PyPI Python versions License: MIT CI

AllStak SDK for Python, Django, Flask, FastAPI, and plain services. Captures exceptions, logs, inbound and outbound HTTP requests, spans, database telemetry, and cron heartbeats.

Install

pip install allstak

Framework extras are opt-in so the base install stays minimal:

pip install "allstak[fastapi]"     # FastAPI/Starlette helpers
pip install "allstak[flask]"       # Flask helpers
pip install "allstak[django]"      # Django middleware + integrations
pip install "allstak[sqlalchemy]"  # SQLAlchemy query telemetry
pip install "allstak[all]"         # everything above

Requires Python 3.9+. Wheels are universal (py3-none-any). Every release is built reproducibly under a pinned SOURCE_DATE_EPOCH, validated via twine check --strict, smoke-installed on Python 3.10/3.11/3.12, and uploaded via PyPI Trusted Publishers (OIDC) with PEP 740 Sigstore attestations.

Setup

import os
import allstak

allstak.init(
    api_key=os.getenv("ALLSTAK_API_KEY"),
    environment=os.getenv("APP_ENV", "production"),
    release=os.getenv("ALLSTAK_RELEASE"),
)

allstak.log.info("worker started")
allstak.capture_exception(RuntimeError("checkout failed"))

FastAPI

from fastapi import FastAPI
from allstak.integrations.fastapi import AllStakFastAPI

app = FastAPI()
AllStakFastAPI(app, service="checkout-api")

Flask

from flask import Flask
from allstak.integrations.flask import AllStakFlask

app = Flask(__name__)
AllStakFlask(app)

Django

Add the middleware:

MIDDLEWARE = [
    "allstak.integrations.django.AllStakDjangoMiddleware",
    *MIDDLEWARE,
]

Spans

with allstak.start_span("checkout.authorize", tags={"provider": "payments"}):
    authorize_payment()

Configuration

Option Description
api_key Project API key.
environment Deployment environment.
release App version or commit SHA.
flush_interval_ms Background flush interval.
buffer_size Max buffered events.

Privacy

The SDK redacts common sensitive headers and fields. Avoid putting secrets in custom metadata.

Troubleshooting

  • No events: confirm ALLSTAK_API_KEY is set before allstak.init(...).
  • Missing request telemetry: register the framework integration during app startup.
  • Short-lived script: call allstak.get_client().flush() before exit when a client is initialized.

Contributing and Support

License

MIT

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

allstak-0.1.3.tar.gz (97.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

allstak-0.1.3-py3-none-any.whl (90.9 kB view details)

Uploaded Python 3

File details

Details for the file allstak-0.1.3.tar.gz.

File metadata

  • Download URL: allstak-0.1.3.tar.gz
  • Upload date:
  • Size: 97.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for allstak-0.1.3.tar.gz
Algorithm Hash digest
SHA256 7a48c43e36351435bdbe2d9d097445d52cd626cf53b31e984a0b1866795bc09f
MD5 4d82d62244d850898dea53a2f1adae4d
BLAKE2b-256 bdb6e7b3d4dfd01cde6c723dab71ba7bd13aa566cf0950404eaadd6c6933bc75

See more details on using hashes here.

Provenance

The following attestation bundles were made for allstak-0.1.3.tar.gz:

Publisher: publish.yml on AllStak/allstak-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file allstak-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: allstak-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 90.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for allstak-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 eafc8e53e25bf58faae19f32c8caf5b7068170f024dfdadb4bc020f09218b83e
MD5 db6e799a4be4b7efa117ca69a6dd2e56
BLAKE2b-256 d14270569f8b36a1814140af339234facf7f646a83b0c63a039b675d2e4d4aee

See more details on using hashes here.

Provenance

The following attestation bundles were made for allstak-0.1.3-py3-none-any.whl:

Publisher: publish.yml on AllStak/allstak-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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