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.2a1-cp314-cp314-macosx_15_0_x86_64.whl (14.4 MB view details)

Uploaded CPython 3.14macOS 15.0+ x86-64

honeycomb_pycpp-0.1.2a1-cp314-cp314-macosx_14_0_arm64.whl (13.8 MB view details)

Uploaded CPython 3.14macOS 14.0+ ARM64

honeycomb_pycpp-0.1.2a1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (19.1 MB view details)

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

honeycomb_pycpp-0.1.2a1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (18.0 MB view details)

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

File details

Details for the file honeycomb_pycpp-0.1.2a1-cp314-cp314-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for honeycomb_pycpp-0.1.2a1-cp314-cp314-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 464e90b625a70f843d6623a321195be9b720b2cf019aa94cee3a6e517fa05ead
MD5 1e9bb6b5490eb2374a744bcf8ab3d967
BLAKE2b-256 c2f95561d8a4688faa2c08364769cb6ad3eed8fab64d414adf1bb0d6d6931273

See more details on using hashes here.

Provenance

The following attestation bundles were made for honeycomb_pycpp-0.1.2a1-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.2a1-cp314-cp314-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for honeycomb_pycpp-0.1.2a1-cp314-cp314-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 fe97d8cfd875c0422b142e4f939ad1e1bd1359c8f5cdfc981b4a69049313164a
MD5 f4958f5234a9eb385508197121b1c069
BLAKE2b-256 f400191b89d8b67ba5d845c0bf6b122f44310cbd1fa2f4393830276a03ed14c5

See more details on using hashes here.

Provenance

The following attestation bundles were made for honeycomb_pycpp-0.1.2a1-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.2a1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for honeycomb_pycpp-0.1.2a1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cecdc84831659f09f07bb8eff2dcc3526645c38b9b77a22f0bc055fcdeb0ea5b
MD5 4104da9c963828bb65bfd56780c80a08
BLAKE2b-256 ad090789e564f2566705a4b370795164b08c8cae4a9f9aac69e26ef203346282

See more details on using hashes here.

Provenance

The following attestation bundles were made for honeycomb_pycpp-0.1.2a1-cp311-cp311-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.2a1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for honeycomb_pycpp-0.1.2a1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 b5dbd23d44e97d0a59634610ef19a8eab87f758d95e3b67db22fdb475f21b838
MD5 7c362c83d2fde7462357bbb3accc9c8d
BLAKE2b-256 9df1fcb5d202d9cd682bbfadbb04f132d10a5fb38639707aa2c35e148999b703

See more details on using hashes here.

Provenance

The following attestation bundles were made for honeycomb_pycpp-0.1.2a1-cp310-cp310-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