HttpTraceContext.ts
HttpTraceContext.ts overview
Section titled “HttpTraceContext.ts overview”HTTP propagation helpers for Effect tracing context.
This module converts Effect Tracer.Span values into outbound trace headers
and decodes inbound propagation headers into Tracer.ExternalSpan parents.
HTTP clients use it to continue the current span across outgoing requests, and
server middleware uses it to parent request spans from upstream services.
Since v4.0.0
Exports Grouped by Category
Section titled “Exports Grouped by Category”decoding
Section titled “decoding”Decodes an external span safely from the compact B3 b3 header.
Details
Returns Option.none when the header is missing or does not contain trace and
span identifiers.
Signature
declare const b3: FromHeadersSince v4.0.0
fromHeaders
Section titled “fromHeaders”Decodes an external span safely from HTTP trace propagation headers.
Details
W3C traceparent is tried first, followed by compact B3 (b3) and then
multi-header B3 (x-b3-*).
Signature
declare const fromHeaders: (headers: Headers.Headers) => Option.Option<Tracer.ExternalSpan>Since v4.0.0
Decodes an external span safely from the W3C traceparent header.
Details
Only version 00 headers with valid trace and span identifiers are accepted.
Signature
declare const w3c: FromHeadersSince v4.0.0
Decodes an external span safely from multi-header B3 propagation headers.
Details
The decoder reads x-b3-traceid, x-b3-spanid, and optional x-b3-sampled
headers.
Signature
declare const xb3: FromHeadersSince v4.0.0
encoding
Section titled “encoding”toHeaders
Section titled “toHeaders”Encodes a span into HTTP trace propagation headers.
Details
The generated headers include both compact B3 (b3) and W3C traceparent
formats.
Signature
declare const toHeaders: (span: Tracer.Span) => Headers.HeadersSince v4.0.0
models
Section titled “models”FromHeaders (interface)
Section titled “FromHeaders (interface)”Function type for decoding tracing headers into an external span.
Details
Returns Option.none when the headers do not contain a supported or valid trace
context.
Signature
export interface FromHeaders { (headers: Headers.Headers): Option.Option<Tracer.ExternalSpan>}Since v4.0.0