package grpctrace
import "go.opentelemetry.io/otel/plugin/grpctrace"
Index ¶
- func Extract(ctx context.Context, metadata *metadata.MD) ([]core.KeyValue, core.SpanContext)
- func Inject(ctx context.Context, metadata *metadata.MD)
- func StreamClientInterceptor(tracer trace.Tracer) grpc.StreamClientInterceptor
- func StreamServerInterceptor(tracer trace.Tracer) grpc.StreamServerInterceptor
- func UnaryClientInterceptor(tracer trace.Tracer) grpc.UnaryClientInterceptor
- func UnaryServerInterceptor(tracer trace.Tracer) grpc.UnaryServerInterceptor
Functions ¶
func Extract ¶
Extract returns the correlation context and span context that another service encoded in the gRPC metadata object with Inject. This function is meant to be used on incoming requests.
func Inject ¶
Inject injects correlation context and span context into the gRPC metadata object. This function is meant to be used on outgoing requests.
func StreamClientInterceptor ¶
func StreamClientInterceptor(tracer trace.Tracer) grpc.StreamClientInterceptor
StreamClientInterceptor returns a grpc.StreamClientInterceptor suitable for use in a grpc.Dial call.
For example:
tracer := global.Tracer("client-tracer") s := grpc.Dial( grpc.WithStreamInterceptor(grpctrace.StreamClientInterceptor(tracer)), ..., // (existing DialOptions))
func StreamServerInterceptor ¶
func StreamServerInterceptor(tracer trace.Tracer) grpc.StreamServerInterceptor
StreamServerInterceptor returns a grpc.StreamServerInterceptor suitable for use in a grpc.NewServer call.
For example:
tracer := global.Tracer("client-tracer") s := grpc.Dial( grpc.StreamInterceptor(grpctrace.StreamServerInterceptor(tracer)), ..., // (existing ServerOptions))
func UnaryClientInterceptor ¶
func UnaryClientInterceptor(tracer trace.Tracer) grpc.UnaryClientInterceptor
UnaryClientInterceptor returns a grpc.UnaryClientInterceptor suitable for use in a grpc.Dial call.
For example:
tracer := global.Tracer("client-tracer") s := grpc.NewServer( grpc.WithUnaryInterceptor(grpctrace.UnaryClientInterceptor(tracer)), ..., // (existing DialOptions))
func UnaryServerInterceptor ¶
func UnaryServerInterceptor(tracer trace.Tracer) grpc.UnaryServerInterceptor
UnaryServerInterceptor returns a grpc.UnaryServerInterceptor suitable for use in a grpc.NewServer call.
For example:
tracer := global.Tracer("client-tracer") s := grpc.Dial( grpc.UnaryInterceptor(grpctrace.UnaryServerInterceptor(tracer)), ..., // (existing ServerOptions))
Source Files ¶
grpctrace.go interceptor.go
- Version
- v0.4.3
- Published
- Apr 24, 2020
- Platform
- linux/amd64
- Imports
- 15 packages
- Last checked
- 1 minute ago –
Tools for package owners.