Distributed Tracing

ContractSpec uses OpenTelemetry (OTel) for distributed tracing. This guide explains how to configure exporters and collectors.

Configuration

Configure the OTel SDK via environment variables:

OTEL_SERVICE_NAME=my-service
OTEL_EXPORTER_OTLP_ENDPOINT=http://otel-collector:4318
OTEL_TRACES_SAMPLER=parentbased_traceidratio
OTEL_TRACES_SAMPLER_ARG=0.1

Exporters

By default, the OTLP exporter is used. You can point it to:

  • Jaeger
  • Tempo (Grafana)
  • Honeycomb
  • Datadog (via OTel Collector)