Repository navigation
The Apitally Python SDK has been rebuilt as an OpenTelemetry distribution. It now sends metrics, logs, and traces using OTLP and configures OpenTelemetry automatically. See the release announcement for more details.
This release includes breaking changes to setup and configuration. If you're upgrading from v0, follow the migration guide.
Added
- Sampling for request logs and traces through
sample_rateand thesample_on_request/sample_on_responsecallbacks. - A
mask_log_recordcallback to redact sensitive values or drop individual application log records before export. - Custom request attributes through
apitally.set_request_attribute(). These add application context to traces and can be used in sampling and body-masking callbacks. - Custom attributes for API consumers, alongside their identifier, name, and group.
Changed
- A common
apitally.init()entry point simplifies setup for FastAPI, Flask, Django, Starlette, and BlackSheep. apitally.set_consumer()now provides a consistent way to identify API consumers across all supported frameworks.- Write tokens replace client IDs for authentication. Tokens can be created and revoked in the Apitally dashboard.
- Request logging, tracing, and application log capture are now enabled by default.