Metadata-Version: 2.4
Name: cancontech_tracing
Version: 0.0.3
Summary: cancontech tracing library
License-File: LICENSE
Requires-Python: >=3.11
Requires-Dist: fastapi>=0.111.0
Requires-Dist: openinference-instrumentation-anthropic==0.1.20
Requires-Dist: openinference-instrumentation-google-genai>=0.1.12
Requires-Dist: openinference-instrumentation-openai==0.1.41
Requires-Dist: openinference-instrumentation==0.1.41
Requires-Dist: opentelemetry-api>=1.39.0
Requires-Dist: opentelemetry-exporter-otlp>=1.39.0
Requires-Dist: opentelemetry-instrumentation-aiohttp-client==0.60b0
Requires-Dist: opentelemetry-sdk>=1.39.0
Requires-Dist: pydantic>=2.12.3
Description-Content-Type: text/markdown

# **What is it?**

## CanConTech Tracing

Collection of tracing utility functions

### Phoenix authentication

If your Phoenix server has auth enabled, set `PHOENIX_API_KEY` and `init_tracing(...)`
will automatically send `authorization: Bearer <PHOENIX_API_KEY>` with trace exports.
You can still pass explicit exporter headers via `init_tracing(..., headers=...)`.


### Installation

* Install **uv**:
	* Windows: `powershell -c "irm https://astral.sh/uv/install.ps1 | iex"`
	* macOS/Linux: `curl -LsSf https://astral.sh/uv/install.sh | sh`
* Set env var `UV_NATIVE_TLS=true` to avoid certificate errors
* Sync environment: `uv sync`. This will create a new default virtual environment (.venv) if it doesn't exist


### Testing

#### unit tests
`uv run pytest src/tests/unit`

#### integration tests
```
ARIZE_CONTAINER_ID=$(docker run --rm -d -p 6006:6006 -p 4317:4317 -i -t arizephoenix/phoenix:latest)

uv run pytest src/tests/integration

docker stop $ARIZE_CONTAINER_ID

```
