contrib/google.golang.org/grpc
Those integration are enabled by having the
following import
in the project’s orchestrion.tool.go
file:
import (
_ "github.com/DataDog/orchestrion"
_ "gopkg.in/DataDog/dd-trace-go.v1/contrib/google.golang.org/grpc" // integration
//...
)
The Go implementation of gRPC.
Client
One of
- Call to
grpc.Dial
- Call to
grpc.DialContext
- Call to
grpc.NewClient
Append the following
grpc.DialOption
arguments to the function call:// Using the following synthetic imports: import ( grpc "google.golang.org/grpc" grpctrace "gopkg.in/DataDog/dd-trace-go.v1/contrib/google.golang.org/grpc" )
grpc.WithChainStreamInterceptor(grpctrace.StreamClientInterceptor())
// Using the following synthetic imports: import ( grpc "google.golang.org/grpc" grpctrace "gopkg.in/DataDog/dd-trace-go.v1/contrib/google.golang.org/grpc" )
grpc.WithChainUnaryInterceptor(grpctrace.UnaryClientInterceptor())
Server
Call to
grpc.NewServer
Append the following
grpc.ServerOption
arguments to the function call:// Using the following synthetic imports: import ( grpc "google.golang.org/grpc" grpctrace "gopkg.in/DataDog/dd-trace-go.v1/contrib/google.golang.org/grpc" )
grpc.ChainStreamInterceptor(grpctrace.StreamServerInterceptor())
// Using the following synthetic imports: import ( grpc "google.golang.org/grpc" grpctrace "gopkg.in/DataDog/dd-trace-go.v1/contrib/google.golang.org/grpc" )
grpc.ChainUnaryInterceptor(grpctrace.UnaryServerInterceptor())