OpenTelemetry

OpenTelemetry Integration

Zespan accepts standard OpenTelemetry spans via OTLP/HTTP. Point any OTel SDK, collector, or exporter at our endpoint — no proprietary format required.

OpenTelemetry is an open-source observability standard providing vendor-neutral APIs, SDKs, and protocols for traces, metrics, and logs.

zespan.com — opentelemetry trace
Zespan trace showing spans from an OpenTelemetry exporter with standard resource attributes

Getting Started

1

Configure your OTel exporter

Point your existing OTel exporter at the Zespan OTLP/HTTP endpoint. Add your API key as a header.

bash
# Environment variables for any OTel-compatible SDK
OTEL_EXPORTER_OTLP_ENDPOINT=https://zespan.com/v1/otel
OTEL_EXPORTER_OTLP_HEADERS=x-api-key=your-api-key

# Or configure the exporter in code:
from opentelemetry.exporter.otlp.proto.http.trace_exporter import OTLPSpanExporter
from opentelemetry.sdk.trace.export import BatchSpanProcessor

exporter = OTLPSpanExporter(
    endpoint="https://zespan.com/v1/otel",
    headers={"x-api-key": "your-api-key"},
)
2

Use the built-in OTel primitives (optional)

If you prefer, use Zespan's built-in OTel helpers to initialize a tracer directly.

typescript
import { Zespan, initOTel, createSpan } from '@zespan/sdk';

const { tracer } = initOTel({
  apiKey: process.env.ZESPAN_API_KEY,
  serviceName: 'my-ai-service',
});

const span = tracer.startSpan('my-llm-call');
// ... your LLM call ...
span.end();
3

View spans in Zespan

Open Trace Explorer. Spans from your OTel exporter appear alongside SDK-instrumented traces in the same unified view.

What's captured automatically

  • Standard OTLP/HTTP endpoint: https://zespan.com/v1/otel
  • x-api-key header authentication: same key as the SDK
  • Resource attributes preserved: service.name, deployment.environment, and custom attributes
  • OTel Collector compatible: route spans through your existing pipeline to Zespan
  • BaggageSpanProcessor: propagates custom baggage through distributed spans automatically
  • Framework agnostic: any OTel-instrumented framework — LangChain, CrewAI, or custom

FAQ

Can I send spans from Python, Go, or Java?

Yes. Zespan's OTLP/HTTP endpoint accepts standard spans from any language with an OpenTelemetry SDK — Python, Go, Java, Ruby, PHP, .NET, and more.

Can I use OTel alongside the Zespan SDK?

Yes. You can mix SDK-instrumented calls (wrapOpenAI, LumiqCallbackHandler) with raw OTel spans in the same project. All spans appear together in Trace Explorer.

Does Zespan support OTLP/gRPC?

Currently Zespan supports OTLP/HTTP. OTLP/gRPC support is on the roadmap.

Start for free — 10K traces/month, no card needed

OpenTelemetry integration works on all plans including the free tier.

← All integrations