thread.step() calls throughout your codebase. Instead, you can use the Threadify OpenTelemetry Exporter to seamlessly translate your existing traces into Threadify execution graphs.
The Mapping Model
The Threadify Exporter automatically translates the highly technical OTel hierarchy into business-friendly language:Status Mapping
The Exporter automatically translates the OpenTelemetrySpanStatus into Threadify step outcomes. This ensures that technical failures (and even ambiguous states) are correctly captured as service-delivery intelligence.
By following the standard OpenTelemetry convention where
UNSET implies success, Threadify ensures zero-friction integration for existing instrumented applications.1. Setup the Exporter
Integrating the exporter into your application takes just a few lines of code. You initialize the Exporter and register it with your global OpenTelemetryTracerProvider.
- Node.js
- Go
- Python
By default, the Exporter will automatically push Spans to Threadify whenever they end. It manages the underlying Threadify Thread lifecycles for you transparently.
2. Filtering Spans
Some applications generate a high volume of internal or utility spans that you may not want to send to Threadify. Use thefilters (Node.js/Go) or "filters" (Python) option to drop spans by name before they are exported.
Filters are applied on the span name only. Trailing
* acts as a prefix wildcard. Empty filters are skipped.3. Using OpenTelemetry Natively
Once configured, you simply use the standard OpenTelemetry API. You do not need to import or call Threadify directly in your business logic!- Node.js
- Go
- Python
4. Advanced Attributes (Optional)
If you want finer control over how a specific Span maps to Threadify, you can set the following specialthreadify.* attributes on your Span. If omitted, the Exporter will use sensible defaults.
Any attributes starting with
threadify.ref.* or threadify.context.* will be explicitly mapped to references or context respectively, bypassing the default configuration rules.