Metadata-Version: 2.4
Name: ondemand-obs
Version: 0.1.5
Summary: OpenTelemetry observability layer for the Ondemand platform
Author-email: Ondemand AI <dev@ondemand-ai.com.br>
License: Apache-2.0
Project-URL: Homepage, https://ondemand-ai.com.br
Project-URL: Repository, https://github.com/Ondemand-AI/ondemand-obs
Keywords: opentelemetry,observability,tracing,ondemand
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: opentelemetry-api>=1.27
Requires-Dist: opentelemetry-sdk>=1.27
Requires-Dist: opentelemetry-exporter-otlp-proto-http>=1.27
Requires-Dist: opentelemetry-instrumentation-httpx>=0.48b0
Requires-Dist: opentelemetry-instrumentation-requests>=0.48b0
Provides-Extra: temporal
Requires-Dist: temporalio>=1.7.0; extra == "temporal"
Provides-Extra: dev
Requires-Dist: pytest>=8.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.23; extra == "dev"

# ondemand-obs

OpenTelemetry observability layer for the [Ondemand AI](https://ondemand-ai.com.br) platform. Ships traces, metrics, and logs to HyperDX (or any OTLP-compatible backend).

## Usage

Set `HYPERDX_API_KEY` in your environment. That's it — the `ondemand-ai[worker]` SDK calls `configure_observability()` automatically at worker startup.

```bash
HYPERDX_API_KEY=your-key OTEL_SERVICE_NAME=my-robot python -m src.main
```

## Install

```bash
pip install ondemand-obs           # base (traces, metrics, logs, httpx/requests auto-instrument)
pip install "ondemand-obs[temporal]"  # + Temporal TracingInterceptor
```

## Environment variables

| Variable | Required | Default |
|---|---|---|
| `HYPERDX_API_KEY` | Yes (disables if absent) | — |
| `OTEL_SERVICE_NAME` | No | passed to `configure_observability()` |
| `OTEL_EXPORTER_OTLP_ENDPOINT` | No | `https://in-otel.hyperdx.io` |
