debian-mirror-gitlab/workhorse-vendor/github.com/grpc-ecosystem/go-grpc-middleware/tracing/opentracing
2021-04-17 20:07:23 +05:30
..
client_interceptors.go New upstream version 13.10.3+ds1 2021-04-17 20:07:23 +05:30
doc.go New upstream version 13.10.3+ds1 2021-04-17 20:07:23 +05:30
DOC.md New upstream version 13.10.3+ds1 2021-04-17 20:07:23 +05:30
id_extract.go New upstream version 13.10.3+ds1 2021-04-17 20:07:23 +05:30
metadata.go New upstream version 13.10.3+ds1 2021-04-17 20:07:23 +05:30
options.go New upstream version 13.10.3+ds1 2021-04-17 20:07:23 +05:30
README.md New upstream version 13.10.3+ds1 2021-04-17 20:07:23 +05:30
server_interceptors.go New upstream version 13.10.3+ds1 2021-04-17 20:07:23 +05:30

grpc_opentracing

import "github.com/grpc-ecosystem/go-grpc-middleware/tracing/opentracing"

Overview

grpc_opentracing adds OpenTracing

OpenTracing Interceptors

These are both client-side and server-side interceptors for OpenTracing. They are a provider-agnostic, with backends such as Zipkin, or Google Stackdriver Trace.

For a service that sends out requests and receives requests, you need to use both, otherwise downstream requests will not have the appropriate requests propagated.

All server-side spans are tagged with grpc_ctxtags information.

For more information see: http://opentracing.io/documentation/ https://github.com/opentracing/specification/blob/master/semantic_conventions.md

Imported Packages

Index

Package files

client_interceptors.go doc.go id_extract.go metadata.go options.go server_interceptors.go

Constants

const (
    TagTraceId = "trace.traceid"
    TagSpanId  = "trace.spanid"
)

func ClientAddContextTags

func ClientAddContextTags(ctx context.Context, tags opentracing.Tags) context.Context

ClientAddContextTags returns a context with specified opentracing tags, which are used by UnaryClientInterceptor/StreamClientInterceptor when creating a new span.

func StreamClientInterceptor

func StreamClientInterceptor(opts ...Option) grpc.StreamClientInterceptor

StreamClientInterceptor returns a new streaming client interceptor for OpenTracing.

func StreamServerInterceptor

func StreamServerInterceptor(opts ...Option) grpc.StreamServerInterceptor

StreamServerInterceptor returns a new streaming server interceptor for OpenTracing.

func UnaryClientInterceptor

func UnaryClientInterceptor(opts ...Option) grpc.UnaryClientInterceptor

UnaryClientInterceptor returns a new unary client interceptor for OpenTracing.

func UnaryServerInterceptor

func UnaryServerInterceptor(opts ...Option) grpc.UnaryServerInterceptor

UnaryServerInterceptor returns a new unary server interceptor for OpenTracing.

type FilterFunc

type FilterFunc func(ctx context.Context, fullMethodName string) bool

FilterFunc allows users to provide a function that filters out certain methods from being traced.

If it returns false, the given request will not be traced.

type Option

type Option func(*options)

func WithFilterFunc

func WithFilterFunc(f FilterFunc) Option

WithFilterFunc customizes the function used for deciding whether a given call is traced or not.

func WithTracer

func WithTracer(tracer opentracing.Tracer) Option

WithTracer sets a custom tracer to be used for this middleware, otherwise the opentracing.GlobalTracer is used.


Generated by godoc2ghmd