Documentation ¶
Overview ¶
Package grpsink is a generated protocol buffer package.
It is generated from these files:
sinks/grpsink/grpc_sink.proto
It has these top-level messages:
Empty
Index ¶
- Variables
- func RegisterSpanSinkServer(s *grpc.Server, srv SpanSinkServer)
- type Empty
- func (*Empty) Descriptor() ([]byte, []int)
- func (m *Empty) Marshal() (dAtA []byte, err error)
- func (m *Empty) MarshalTo(dAtA []byte) (int, error)
- func (*Empty) ProtoMessage()
- func (m *Empty) Reset()
- func (m *Empty) Size() (n int)
- func (m *Empty) String() string
- func (m *Empty) Unmarshal(dAtA []byte) error
- type GRPCSpanSink
- type SpanSinkClient
- type SpanSinkServer
Constants ¶
This section is empty.
Variables ¶
var ( ErrInvalidLengthGrpcSink = fmt.Errorf("proto: negative length found during unmarshaling") ErrIntOverflowGrpcSink = fmt.Errorf("proto: integer overflow") )
Functions ¶
func RegisterSpanSinkServer ¶
func RegisterSpanSinkServer(s *grpc.Server, srv SpanSinkServer)
Types ¶
type Empty ¶
type Empty struct { }
func (*Empty) Descriptor ¶
func (*Empty) ProtoMessage ¶
func (*Empty) ProtoMessage()
type GRPCSpanSink ¶
type GRPCSpanSink struct {
// contains filtered or unexported fields
}
GRPCSpanSink is a generic sink that sends spans to a configurable target service over gRPC. The sink is only tied to the grpc_sink.proto definition of a SpanSink service, and thus is agnostic with respect to the specific server it is connecting to.
func NewGRPCSpanSink ¶
func NewGRPCSpanSink(ctx context.Context, target, name string, log *logrus.Logger, opts ...grpc.DialOption) (*GRPCSpanSink, error)
NewGRPCSpanSink creates a sinks.SpanSink that can write to any compliant gRPC server.
The target parameter should be of the "host:port"; the name parameter is prepended with "grpc-", and is used when reporting logs in order to permit differentiation between various services.
Any grpc.CallOpts that are provided will be used while first establishing the connection to the target server (in grpc.DialContext()).
func (*GRPCSpanSink) Flush ¶
func (gs *GRPCSpanSink) Flush()
Flush reports total counts of the number of sent and dropped spans since the last flush.
No data is sent to the target sink by this call, as this sink dispatches all spans directly via gRPC during Ingest().
func (*GRPCSpanSink) Ingest ¶
func (gs *GRPCSpanSink) Ingest(ssfSpan *ssf.SSFSpan) error
Ingest takes in a span and streams it over gRPC to the connected server.
func (*GRPCSpanSink) Name ¶
func (gs *GRPCSpanSink) Name() string
Name returns this sink's name. As the gRPC sink is generic, it's expected that this is set via configuration and injected.
type SpanSinkClient ¶
type SpanSinkClient interface {
SendSpan(ctx context.Context, in *ssf.SSFSpan, opts ...grpc.CallOption) (*Empty, error)
}
func NewSpanSinkClient ¶
func NewSpanSinkClient(cc *grpc.ClientConn) SpanSinkClient