Skip to main content

Entity-centric observability client for scientific instrument pipelines

Project description

helixobs — Python client

Entity-centric observability for scientific instrument pipelines.

Track domain entities (raw observations, intermediate products, derived results) across disjoint asynchronous pipeline stages. The library attaches provenance links between entities so you can trace any scientific result back to the raw data that produced it.

Built on OpenTelemetry. Signals are standard OTLP — the HelixObs gateway adds entity intelligence on top.

Installation

pip install helixobs

Requires Python 3.11+.

Quick start

from helixobs import Instrument
from helixobs.logging import configure_logging
import logging

configure_logging()
log = logging.getLogger("my.pipeline")

tel = Instrument(
    service_name="my-instrument.pipeline",
    instrument_id="MY_INSTRUMENT",
    endpoint="gateway:4317",
)

# Track an entity through a pipeline stage
with tel.create("detector", id=product_id, parents=[frame_id]) as token:
    result = process(item)
    log.info("item processed")           # helix_entity_id injected automatically
    if result.score > 0.95:
        token.add_event("helix.event.detection_confirmed", {"score": result.score})
# complete() called on exit; error() called on unhandled exception

See USER_GUIDE.md for the full API reference, integration patterns, structured logging, and data model.

Development

pip install -e ".[dev]"
pytest

Project details


Download files

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

Source Distribution

helixobs-0.2.2.tar.gz (26.3 kB view details)

Uploaded Source

Built Distribution

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

helixobs-0.2.2-py3-none-any.whl (21.4 kB view details)

Uploaded Python 3

File details

Details for the file helixobs-0.2.2.tar.gz.

File metadata

  • Download URL: helixobs-0.2.2.tar.gz
  • Upload date:
  • Size: 26.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for helixobs-0.2.2.tar.gz
Algorithm Hash digest
SHA256 d73d8075d5c1562ba0769bd307b39ce6d8bfd54a5c54e1e423e877572bbda7c6
MD5 b20f5cf3d073259b083a5cf2203899fe
BLAKE2b-256 855914cec54529308e01ff79e41e5f7ba4267e441633c6c96563c49cf25d3f29

See more details on using hashes here.

Provenance

The following attestation bundles were made for helixobs-0.2.2.tar.gz:

Publisher: publish.yml on HelixObs/client-python

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

File details

Details for the file helixobs-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: helixobs-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 21.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for helixobs-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1ce22c0fe8d6a88b7c7da4fef7568b578cb8c8a22102e8dd6b96ba650a267527
MD5 27275d993eb9ef56061c79fdbbf63224
BLAKE2b-256 f45e57be8ac775d1d4f9723ef0172c5d6e130eca8e8350b5bddd51990390a00e

See more details on using hashes here.

Provenance

The following attestation bundles were made for helixobs-0.2.2-py3-none-any.whl:

Publisher: publish.yml on HelixObs/client-python

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