go.opencensus.io: go.opencensus.io/plugin/ochttp/propagation/b3 Index | Files

package b3

import "go.opencensus.io/plugin/ochttp/propagation/b3"

Package b3 contains a propagation.HTTPFormat implementation for B3 propagation. See https://github.com/openzipkin/b3-propagation 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 Uses

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

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

func ParseSpanID Uses

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 Uses

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

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

type HTTPFormat Uses

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 Uses

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

SpanContextFromRequest extracts a B3 span context from incoming requests.

func (*HTTPFormat) SpanContextToRequest Uses

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

SpanContextToRequest modifies the given request to include B3 headers.

Package b3 imports 4 packages (graph) and is imported by 15 packages. Updated 2019-03-15. Refresh now. Tools for package owners.