effect-io-ai

Package: effect
Module: Tracer

Tracer.AnySpan

A span value that can participate in tracing, either an Effect-managed Span or an ExternalSpan propagated from another tracing system.

Example (Accepting any span)

import { Effect, Tracer } from "effect"

// Function that accepts any span type
const logSpan = (span: Tracer.AnySpan) => {
  console.log(`Span ID: ${span.spanId}, Trace ID: ${span.traceId}`)
  return Effect.succeed(span)
}

// Works with both Span and ExternalSpan
const externalSpan = Tracer.externalSpan({
  spanId: "span-123",
  traceId: "trace-456"
})

Signature

type AnySpan = Span | ExternalSpan

Source

Since v2.0.0