Skip to main content

Honeycomb OpenTelemetry distro which embeds the C++ SDK

Project description

honeycomb-pycpp

OSS Lifecycle Build

Python bindings for the OpenTelemetry C++ SDK. Provides high-performance tracing via a Pythonic interface, and ships as an OpenTelemetry distro for drop-in use with auto-instrumentation.

This library is experimental.

Installation

pip install honeycomb-pycpp

The wheel bundles the OpenTelemetry C++ SDK — no system-level dependencies required.

Configuration

The SDK is configured via a YAML file following the OpenTelemetry Configuration File Format. A default config is embedded in the package and used when no override is provided.

Environment variable Description
OTEL_CONFIG_FILE Path to a custom configuration YAML. Overrides the embedded default.
OTEL_EXPORTER_OTLP_ENDPOINT OTLP endpoint (default: http://localhost:4318)
OTEL_EXPORTER_OTLP_HEADERS Headers to send with OTLP requests
OTEL_RESOURCE_ATTRIBUTES Comma-separated resource attributes
OTEL_SERVICE_NAME Service name

Usage

As a distro (auto-instrumentation)

opentelemetry-instrument --service-name my-service python app.py

The distro registers itself automatically via entry points — no code changes required.

Programmatic use

import honeycomb_pycpp as otel

# Initialize from config file (or uses embedded default)
provider = otel.TracerProvider("path/to/otel.yaml")

tracer = provider.get_tracer("my-tracer")

with tracer.start_as_current_span("my-span") as span:
    span.set_attribute("key", "value")
    # ... do work ...

Current limitations

  • Tracing only — metrics and logs are not yet supported
  • Links require OpenTelemetry C++ ABI v2 (not yet enabled)

Building from source

Requirements: Python >= 3.10, CMake >= 3.15, C++17 compiler.

git clone https://github.com/honeycombio/honeycomb-pycpp
cd honeycomb-pycpp
pip install -r requirements-dev.txt
pip install -e .

To rebuild after C++ changes:

pip install -e . --force-reinstall --no-deps

To clean up cmake artifacts:

rm -rf CMakeCache.txt CMakeFiles/ cmake_install.cmake build/ dist/ *.egg-info/ *.so

License

Apache License 2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

honeycomb_pycpp-0.1.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (19.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

honeycomb_pycpp-0.1.3-cp314-cp314-macosx_15_0_x86_64.whl (14.7 MB view details)

Uploaded CPython 3.14macOS 15.0+ x86-64

honeycomb_pycpp-0.1.3-cp314-cp314-macosx_14_0_arm64.whl (14.1 MB view details)

Uploaded CPython 3.14macOS 14.0+ ARM64

honeycomb_pycpp-0.1.3-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (18.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

File details

Details for the file honeycomb_pycpp-0.1.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for honeycomb_pycpp-0.1.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 89ddb03048ddebafbcfe1f4cc2e340f515dc48aa4f76353549175e4afdad7888
MD5 6b8ff4778f528918c62d03da7bdddaf3
BLAKE2b-256 44f6c782dcb6effcfd6dc32e0738fb3382f13bacdd4b4b0cba7251819827944d

See more details on using hashes here.

Provenance

The following attestation bundles were made for honeycomb_pycpp-0.1.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build-wheels.yml on honeycombio/honeycomb-pycpp

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

File details

Details for the file honeycomb_pycpp-0.1.3-cp314-cp314-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for honeycomb_pycpp-0.1.3-cp314-cp314-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 0891b8ba32711f7afced5e764d2f69619147aa074e1c176786fdabc76c49c068
MD5 d0589e9028940c3f07653f5c3c4af8cd
BLAKE2b-256 ca9ae0208d4f94b5dc345cf7d8174782300ba0ed0447644e25830e49061b4219

See more details on using hashes here.

Provenance

The following attestation bundles were made for honeycomb_pycpp-0.1.3-cp314-cp314-macosx_15_0_x86_64.whl:

Publisher: build-wheels.yml on honeycombio/honeycomb-pycpp

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

File details

Details for the file honeycomb_pycpp-0.1.3-cp314-cp314-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for honeycomb_pycpp-0.1.3-cp314-cp314-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 fe7994669d6df54c654c5caad0feb49c2f2c24ab88673444664531214a972635
MD5 ebb234dc7e817993a7a951f593ac3f17
BLAKE2b-256 230f49d4a8d662c8dbd066a2a8ca2c6dfda23b25c430007e8c740892e6588359

See more details on using hashes here.

Provenance

The following attestation bundles were made for honeycomb_pycpp-0.1.3-cp314-cp314-macosx_14_0_arm64.whl:

Publisher: build-wheels.yml on honeycombio/honeycomb-pycpp

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

File details

Details for the file honeycomb_pycpp-0.1.3-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for honeycomb_pycpp-0.1.3-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 caa426f1b7f6625e9944d4bd7e869aa4910f380be232a2722959ced990f4cf9a
MD5 525efb31712bb4f07792a448a5dd745d
BLAKE2b-256 a15ab485583071ff6b29b7db3ec14f05fae0c60721f2c25f41e27343ddd49343

See more details on using hashes here.

Provenance

The following attestation bundles were made for honeycomb_pycpp-0.1.3-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: build-wheels.yml on honeycombio/honeycomb-pycpp

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