Documentation ¶
Overview ¶
Package b3 contains a propagation.HTTPFormat implementation for B3 propagation. See https://github.com/openzipkin/b3-propagation for more details.
Index ¶
Constants ¶
const ( TraceIDHeader = "X-B3-TraceId" SpanIDHeader = "X-B3-SpanId" SampledHeader = "X-B3-Sampled" )
B3 headers that OpenCensus understands.
Variables ¶
This section is empty.
Functions ¶
func ParseSampled ¶
func ParseSampled(sampled string) (trace.TraceOptions, bool)
ParseSampled parses the value of the X-B3-Sampled header.
func ParseSpanID ¶
ParseSpanID parses the value of the X-B3-SpanId or X-B3-ParentSpanId headers.
Types ¶
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.