Skip to main content

Module telemetry

Module telemetry 

Source
Expand description

OpenTelemetry tracing: OTLP/HTTP (JSON encoding) export of execution traces, accepted by the OpenTelemetry Collector, Jaeger, Grafana Tempo, Honeycomb and other OTLP backends.

  • One trace per workflow execution; child workflows join their parent’s trace, nested under the step that started them.
  • A root span per execution, and one span per task attempt (dispatch to result), timer and compensation, with worker, attempt and error attributes.
  • Trace and span ids are derived deterministically (SHA-256) from execution, unit and dispatch identifiers, so a runtime restart never produces duplicate or orphaned spans.
  • Export never blocks the engine: spans are queued to a background thread and dropped (with a warning) if the collector cannot keep up.

Configured with orbit server --otlp-endpoint, or the standard OTEL_EXPORTER_OTLP_ENDPOINT, OTEL_EXPORTER_OTLP_HEADERS and OTEL_SERVICE_NAME environment variables.

Structs§

Exporter
Background OTLP exporter.
TelemetryConfig
TraceContext
Where a trace and its root span hang: the trace id and the parent span id (the parent workflow’s step span, for child workflows).

Functions§

root_span_id
spans_for
Spans finished by one committed batch of events.
trace_id
Trace id of a top-level execution.
unit_span_id
Span id of the dispatch-th dispatch of unit in execution.