Documentation
¶
Overview ¶
Package grpc is a generated protocol buffer package.
It is generated from these files:
fixtures_test.proto
It has these top-level messages:
FixtureRequest FixtureReply
Package grpc provides functions to trace the google.golang.org/grpc package v1.2.
Example (Client) ¶
package main
import (
"log"
grpctrace "gopkg.in/DataDog/dd-trace-go.v1/contrib/google.golang.org/grpc.v12"
"google.golang.org/grpc"
)
func main() {
// Create the client interceptor using the grpc trace package.
i := grpctrace.UnaryClientInterceptor(grpctrace.WithServiceName("my-grpc-client"))
// Dial in using the created interceptor...
conn, err := grpc.Dial("localhost:50051", grpc.WithInsecure(), grpc.WithUnaryInterceptor(i))
if err != nil {
log.Fatal(err)
}
defer conn.Close()
// And continue using the connection as normal.
}
Example (Server) ¶
package main
import (
"log"
"net"
grpctrace "gopkg.in/DataDog/dd-trace-go.v1/contrib/google.golang.org/grpc.v12"
"google.golang.org/grpc"
)
func main() {
// Create a listener for the server.
ln, err := net.Listen("tcp", ":50051")
if err != nil {
log.Fatal(err)
}
// Create the unary server interceptor using the grpc trace package.
i := grpctrace.UnaryServerInterceptor(grpctrace.WithServiceName("my-grpc-client"))
// Initialize the grpc server as normal, using the tracing interceptor.
s := grpc.NewServer(grpc.UnaryInterceptor(i))
// ... register your services
// Start serving incoming connections.
if err := s.Serve(ln); err != nil {
log.Fatalf("failed to serve: %v", err)
}
}
Index ¶
- func RegisterFixtureServer(s *grpc1.Server, srv FixtureServer)
- func UnaryClientInterceptor(opts ...InterceptorOption) grpc.UnaryClientInterceptor
- func UnaryServerInterceptor(opts ...InterceptorOption) grpc.UnaryServerInterceptor
- type FixtureClient
- type FixtureReply
- type FixtureRequest
- type FixtureServer
- type InterceptorOption
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RegisterFixtureServer ¶ added in v1.0.0
func RegisterFixtureServer(s *grpc1.Server, srv FixtureServer)
func UnaryClientInterceptor ¶
func UnaryClientInterceptor(opts ...InterceptorOption) grpc.UnaryClientInterceptor
UnaryClientInterceptor will add tracing to a grpc client.
func UnaryServerInterceptor ¶
func UnaryServerInterceptor(opts ...InterceptorOption) grpc.UnaryServerInterceptor
UnaryServerInterceptor will trace requests to the given grpc server.
Types ¶
type FixtureClient ¶ added in v1.0.0
type FixtureClient interface {
Ping(ctx context.Context, in *FixtureRequest, opts ...grpc1.CallOption) (*FixtureReply, error)
}
func NewFixtureClient ¶ added in v1.0.0
func NewFixtureClient(cc *grpc1.ClientConn) FixtureClient
type FixtureReply ¶ added in v1.0.0
type FixtureReply struct {
Message string `protobuf:"bytes,1,opt,name=message" json:"message,omitempty"`
}
The response message containing the greetings
func (*FixtureReply) Descriptor ¶ added in v1.0.0
func (*FixtureReply) Descriptor() ([]byte, []int)
func (*FixtureReply) GetMessage ¶ added in v1.0.0
func (m *FixtureReply) GetMessage() string
func (*FixtureReply) ProtoMessage ¶ added in v1.0.0
func (*FixtureReply) ProtoMessage()
func (*FixtureReply) Reset ¶ added in v1.0.0
func (m *FixtureReply) Reset()
func (*FixtureReply) String ¶ added in v1.0.0
func (m *FixtureReply) String() string
type FixtureRequest ¶ added in v1.0.0
type FixtureRequest struct {
Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
}
The request message containing the user's name.
func (*FixtureRequest) Descriptor ¶ added in v1.0.0
func (*FixtureRequest) Descriptor() ([]byte, []int)
func (*FixtureRequest) GetName ¶ added in v1.0.0
func (m *FixtureRequest) GetName() string
func (*FixtureRequest) ProtoMessage ¶ added in v1.0.0
func (*FixtureRequest) ProtoMessage()
func (*FixtureRequest) Reset ¶ added in v1.0.0
func (m *FixtureRequest) Reset()
func (*FixtureRequest) String ¶ added in v1.0.0
func (m *FixtureRequest) String() string
type FixtureServer ¶ added in v1.0.0
type FixtureServer interface {
Ping(context.Context, *FixtureRequest) (*FixtureReply, error)
}
type InterceptorOption ¶ added in v1.0.0
type InterceptorOption func(*interceptorConfig)
InterceptorOption represents an option that can be passed to the grpc unary client and server interceptors.
func WithAnalytics ¶ added in v1.11.0
func WithAnalytics(on bool) InterceptorOption
WithAnalytics enables Trace Analytics for all started spans.
func WithAnalyticsRate ¶ added in v1.11.0
func WithAnalyticsRate(rate float64) InterceptorOption
WithAnalyticsRate sets the sampling rate for Trace Analytics events correlated to started spans.
func WithServiceName ¶ added in v1.0.0
func WithServiceName(name string) InterceptorOption
WithServiceName sets the given service name for the intercepted client.