Skip to main content

OpenTelemetry instrumentation for Pixeltable

Translates Pixeltable's instrumentation hooks into OpenTelemetry spans and metrics. Instrumentation is opt-in: Pixeltable itself never imports OpenTelemetry or activates telemetry on its own.

pip install opentelemetry-instrumentation-pixeltable
# or, to also pull in the OpenTelemetry SDK and OTLP exporters that init() needs:
pip install 'pixeltable[otel]'

Attach to an existing OpenTelemetry SDK

When your application already owns an OpenTelemetry SDK, attach Pixeltable to it:

from opentelemetry.instrumentation.pixeltable import PixeltableInstrumentor

PixeltableInstrumentor().instrument()  # uses the global providers
# or: PixeltableInstrumentor().instrument(tracer_provider=my_tp, meter_provider=my_mp)

The standard opentelemetry-instrument CLI discovers and activates it automatically via its entry point.

Let Pixeltable configure the SDK

To build providers and an OTLP exporter from Pixeltable's [otel] config (or the standard OTEL_EXPORTER_OTLP_* environment variables), call init() once at startup (requires the pixeltable[otel] extra):

import opentelemetry.instrumentation.pixeltable as pxt_otel

pxt_otel.init(endpoint='http://localhost:4318')

Configuration is read from the database's [[pixeltable.database]] entry (db_exporter_otlp_endpoint, db_exporter_otlp_protocol), then the standard OTEL_EXPORTER_OTLP_* environment variables, then the [otel] section of Pixeltable's config (~/.pixeltable/config.toml).

Per-provider LLM spans

This package emits Pixeltable's own operation, execution, and UDF spans. It does not capture per-provider token usage or cost. To add rich provider spans (OpenAI, Anthropic, etc.), install a dedicated GenAI instrumentor alongside this one:

from opentelemetry.instrumentation.openai_v2 import OpenAIInstrumentor
from opentelemetry.instrumentation.pixeltable import PixeltableInstrumentor

PixeltableInstrumentor().instrument()
OpenAIInstrumentor().instrument()

Because Pixeltable establishes the ambient OpenTelemetry context for every UDF call (including across its thread pools and async scheduler), the provider instrumentor's spans nest correctly under Pixeltable's udf.<name> span. Prefer the bare opentelemetry-instrumentation-* packages (or OpenInference), which attach to the global provider; avoid all-in-one initializers that install their own TracerProvider and would clobber the one configured here.

Metadata

Release files for opentelemetry-instrumentation-pixeltable 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for opentelemetry-instrumentation-pixeltable 0.1.0
File Size Uploaded Provenance
opentelemetry_instrumentation_pixeltable-0.1.0.tar.gz 18.5 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for opentelemetry-instrumentation-pixeltable 0.1.0
File Interpreter ABI Platform
opentelemetry_instrumentation_pixeltable-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 33.7 kB

Release files / opentelemetry_instrumentation_pixeltable-0.1.0.tar.gz

Download URL opentelemetry_instrumentation_pixeltable-0.1.0.tar.gz
Size 18.5 kB
Tags Source
SHA-256 checksum
How to use checksums
d00d899506c87576c7918a4481754c1feb48599931c48bc6834c1919f684c71a
BLAKE2b-256 checksum
How to use checksums
a51ebe407323340f5f747684bc7e727e07e8a1a967605148dbce13a7feb19fa9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / opentelemetry_instrumentation_pixeltable-0.1.0-py3-none-any.whl

Download URL opentelemetry_instrumentation_pixeltable-0.1.0-py3-none-any.whl
Size 15.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6fb41d932984ed2cc875b279ae4d2885853814d3ada063bbe038e3a45fec6509
BLAKE2b-256 checksum
How to use checksums
9eff20451a4c70a11d4d3336892155a4962d6acae0646f7730fb2395e7401b33
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for opentelemetry-instrumentation-pixeltable 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page