Back to

Package b3

Latest Go to latest
Published: Jun 17, 2020 | License: Apache-2.0 | Module:


Package b3 contains a propagation.HTTPFormat implementation for B3 propagation. See for more details.


Package Files


const (
	TraceIDHeader = "X-B3-TraceId"
	SpanIDHeader  = "X-B3-SpanId"
	SampledHeader = "X-B3-Sampled"

B3 headers that OpenCensus understands.

func ParseSampled

func ParseSampled(sampled string) (trace.TraceOptions, bool)

ParseSampled parses the value of the X-B3-Sampled header.

func ParseSpanID

func ParseSpanID(sid string) (spanID trace.SpanID, ok bool)

ParseSpanID parses the value of the X-B3-SpanId or X-B3-ParentSpanId headers.

func ParseTraceID

func ParseTraceID(tid string) (trace.TraceID, bool)

ParseTraceID parses the value of the X-B3-TraceId header.

type HTTPFormat

type HTTPFormat struct{}

HTTPFormat implements propagation.HTTPFormat to propagate traces in HTTP headers in B3 propagation format. HTTPFormat skips the X-B3-ParentId and X-B3-Flags headers because there are additional fields not represented in the OpenCensus span context. Spans created from the incoming header will be the direct children of the client-side span. Similarly, receiver of the outgoing spans should use client-side span created by OpenCensus as the parent.

func (*HTTPFormat) SpanContextFromRequest

func (f *HTTPFormat) SpanContextFromRequest(req *http.Request) (sc trace.SpanContext, ok bool)

SpanContextFromRequest extracts a B3 span context from incoming requests.

func (*HTTPFormat) SpanContextToRequest

func (f *HTTPFormat) SpanContextToRequest(sc trace.SpanContext, req *http.Request)

SpanContextToRequest modifies the given request to include B3 headers.

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to identifier