grpsink

package
v12.0.0+incompatible Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 6, 2019 License: MIT Imports: 22 Imported by: 0

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

Constants

This section is empty.

Variables

View Source
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) Descriptor() ([]byte, []int)

func (*Empty) Marshal

func (m *Empty) Marshal() (dAtA []byte, err error)

func (*Empty) MarshalTo

func (m *Empty) MarshalTo(dAtA []byte) (int, error)

func (*Empty) ProtoMessage

func (*Empty) ProtoMessage()

func (*Empty) Reset

func (m *Empty) Reset()

func (*Empty) Size

func (m *Empty) Size() (n int)

func (*Empty) String

func (m *Empty) String() string

func (*Empty) Unmarshal

func (m *Empty) Unmarshal(dAtA []byte) error

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.

func (*GRPCSpanSink) Start

func (gs *GRPCSpanSink) Start(cl *trace.Client) error

Start performs final preparations on the sink before it is ready to begin ingesting spans.

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

type SpanSinkServer

type SpanSinkServer interface {
	SendSpan(context.Context, *ssf.SSFSpan) (*Empty, error)
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL