Documentation ¶
Index ¶
- Variables
- func NewTracer(serviceName string, dispatcher Dispatcher, options ...TracerOption) (opentracing.Tracer, io.Closer)
- func RegisterSpanAgentServer(s *grpc.Server, srv SpanAgentServer)
- type Batch
- func (*Batch) Descriptor() ([]byte, []int)
- func (m *Batch) GetSpans() []*Span
- func (*Batch) ProtoMessage()
- func (m *Batch) Reset()
- func (m *Batch) String() string
- func (m *Batch) XXX_DiscardUnknown()
- func (m *Batch) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *Batch) XXX_Merge(src proto.Message)
- func (m *Batch) XXX_Size() int
- func (m *Batch) XXX_Unmarshal(b []byte) error
- type Codex
- type DefaultCodex
- type DispatchResult
- func (*DispatchResult) Descriptor() ([]byte, []int)
- func (m *DispatchResult) GetCode() DispatchResult_ResultCode
- func (m *DispatchResult) GetErrorMessage() string
- func (*DispatchResult) ProtoMessage()
- func (m *DispatchResult) Reset()
- func (m *DispatchResult) String() string
- func (m *DispatchResult) XXX_DiscardUnknown()
- func (m *DispatchResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *DispatchResult) XXX_Merge(src proto.Message)
- func (m *DispatchResult) XXX_Size() int
- func (m *DispatchResult) XXX_Unmarshal(b []byte) error
- type DispatchResult_ResultCode
- type Dispatcher
- func NewAgentDispatcher(host string, port int, timeout time.Duration, maxQueueLength int) Dispatcher
- func NewDefaultAgentDispatcher() Dispatcher
- func NewDefaultHTTPDispatcher() Dispatcher
- func NewFileDispatcher(filename string) Dispatcher
- func NewHTTPDispatcher(url string, timeout time.Duration, headers map[string]string, ...) Dispatcher
- func NewInMemoryDispatcher() Dispatcher
- type FileDispatcher
- type GrpcClient
- type HTTPClient
- type InMemoryDispatcher
- type Log
- func (*Log) Descriptor() ([]byte, []int)
- func (m *Log) GetFields() []*Tag
- func (m *Log) GetTimestamp() int64
- func (*Log) ProtoMessage()
- func (m *Log) Reset()
- func (m *Log) String() string
- func (m *Log) XXX_DiscardUnknown()
- func (m *Log) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *Log) XXX_Merge(src proto.Message)
- func (m *Log) XXX_Size() int
- func (m *Log) XXX_Unmarshal(b []byte) error
- type Logger
- type NullLogger
- type Propagator
- type PropagatorOpts
- type RemoteClient
- type RemoteDispatcher
- type Span
- func (*Span) Descriptor() ([]byte, []int)
- func (m *Span) GetDuration() int64
- func (m *Span) GetLogs() []*Log
- func (m *Span) GetOperationName() string
- func (m *Span) GetParentSpanId() string
- func (m *Span) GetServiceName() string
- func (m *Span) GetSpanId() string
- func (m *Span) GetStartTime() int64
- func (m *Span) GetTags() []*Tag
- func (m *Span) GetTraceId() string
- func (*Span) ProtoMessage()
- func (m *Span) Reset()
- func (m *Span) String() string
- func (m *Span) XXX_DiscardUnknown()
- func (m *Span) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *Span) XXX_Merge(src proto.Message)
- func (m *Span) XXX_Size() int
- func (m *Span) XXX_Unmarshal(b []byte) error
- type SpanAgentClient
- type SpanAgentServer
- type SpanContext
- type Tag
- func (*Tag) Descriptor() ([]byte, []int)
- func (m *Tag) GetKey() string
- func (m *Tag) GetMyvalue() isTag_Myvalue
- func (m *Tag) GetType() Tag_TagType
- func (m *Tag) GetVBool() bool
- func (m *Tag) GetVBytes() []byte
- func (m *Tag) GetVDouble() float64
- func (m *Tag) GetVLong() int64
- func (m *Tag) GetVStr() string
- func (*Tag) ProtoMessage()
- func (m *Tag) Reset()
- func (m *Tag) String() string
- func (m *Tag) XXX_DiscardUnknown()
- func (m *Tag) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *Tag) XXX_Merge(src proto.Message)
- func (*Tag) XXX_OneofWrappers() []interface{}
- func (m *Tag) XXX_Size() int
- func (m *Tag) XXX_Unmarshal(b []byte) error
- type Tag_TagType
- type Tag_VBool
- type Tag_VBytes
- type Tag_VDouble
- type Tag_VLong
- type Tag_VStr
- type TextMapPropagator
- type Tracer
- func (tracer *Tracer) Close() error
- func (tracer *Tracer) DispatchSpan(span *_Span)
- func (tracer *Tracer) Extract(format interface{}, carrier interface{}) (opentracing.SpanContext, error)
- func (tracer *Tracer) Inject(ctx opentracing.SpanContext, format interface{}, carrier interface{}) error
- func (tracer *Tracer) StartSpan(operationName string, options ...opentracing.StartSpanOption) opentracing.Span
- func (tracer *Tracer) Tags() []opentracing.Tag
- type TracerOption
- type TracerOptions
- type URLCodex
Constants ¶
This section is empty.
Variables ¶
var DispatchResult_ResultCode_name = map[int32]string{
0: "SUCCESS",
1: "UNKNOWN_ERROR",
2: "RATE_LIMIT_ERROR",
}
var DispatchResult_ResultCode_value = map[string]int32{
"SUCCESS": 0,
"UNKNOWN_ERROR": 1,
"RATE_LIMIT_ERROR": 2,
}
var Tag_TagType_name = map[int32]string{
0: "STRING",
1: "DOUBLE",
2: "BOOL",
3: "LONG",
4: "BINARY",
}
var Tag_TagType_value = map[string]int32{
"STRING": 0,
"DOUBLE": 1,
"BOOL": 2,
"LONG": 3,
"BINARY": 4,
}
Functions ¶
func NewTracer ¶
func NewTracer( serviceName string, dispatcher Dispatcher, options ...TracerOption, ) (opentracing.Tracer, io.Closer)
NewTracer creates a new tracer
func RegisterSpanAgentServer ¶
func RegisterSpanAgentServer(s *grpc.Server, srv SpanAgentServer)
Types ¶
type Batch ¶
type Batch struct { Spans []*Span `protobuf:"bytes,1,rep,name=spans,proto3" json:"spans,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
You can optionally use Batch to send a collection of spans. Spans may not necessarily belong to one traceId.
func (*Batch) Descriptor ¶
func (*Batch) ProtoMessage ¶
func (*Batch) ProtoMessage()
func (*Batch) XXX_DiscardUnknown ¶
func (m *Batch) XXX_DiscardUnknown()
func (*Batch) XXX_Marshal ¶
func (*Batch) XXX_Unmarshal ¶
type DefaultCodex ¶
type DefaultCodex struct{}
DefaultCodex is a no op
func (DefaultCodex) Decode ¶
func (c DefaultCodex) Decode(value string) string
Decode a no-op for decoding the value
func (DefaultCodex) Encode ¶
func (c DefaultCodex) Encode(value string) string
Encode a no-op for encoding the value
type DispatchResult ¶
type DispatchResult struct { Code DispatchResult_ResultCode `protobuf:"varint,1,opt,name=code,proto3,enum=DispatchResult_ResultCode" json:"code,omitempty"` ErrorMessage string `protobuf:"bytes,2,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*DispatchResult) Descriptor ¶
func (*DispatchResult) Descriptor() ([]byte, []int)
func (*DispatchResult) GetCode ¶
func (m *DispatchResult) GetCode() DispatchResult_ResultCode
func (*DispatchResult) GetErrorMessage ¶
func (m *DispatchResult) GetErrorMessage() string
func (*DispatchResult) ProtoMessage ¶
func (*DispatchResult) ProtoMessage()
func (*DispatchResult) Reset ¶
func (m *DispatchResult) Reset()
func (*DispatchResult) String ¶
func (m *DispatchResult) String() string
func (*DispatchResult) XXX_DiscardUnknown ¶
func (m *DispatchResult) XXX_DiscardUnknown()
func (*DispatchResult) XXX_Marshal ¶
func (m *DispatchResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*DispatchResult) XXX_Merge ¶
func (m *DispatchResult) XXX_Merge(src proto.Message)
func (*DispatchResult) XXX_Size ¶
func (m *DispatchResult) XXX_Size() int
func (*DispatchResult) XXX_Unmarshal ¶
func (m *DispatchResult) XXX_Unmarshal(b []byte) error
type DispatchResult_ResultCode ¶
type DispatchResult_ResultCode int32
const ( DispatchResult_SUCCESS DispatchResult_ResultCode = 0 DispatchResult_UNKNOWN_ERROR DispatchResult_ResultCode = 1 DispatchResult_RATE_LIMIT_ERROR DispatchResult_ResultCode = 2 )
func (DispatchResult_ResultCode) EnumDescriptor ¶
func (DispatchResult_ResultCode) EnumDescriptor() ([]byte, []int)
func (DispatchResult_ResultCode) String ¶
func (x DispatchResult_ResultCode) String() string
type Dispatcher ¶
type Dispatcher interface { Name() string Dispatch(span *_Span) DispatchProtoSpan(span *Span) Close() SetLogger(logger Logger) }
Dispatcher dispatches the span object
func NewAgentDispatcher ¶
func NewAgentDispatcher(host string, port int, timeout time.Duration, maxQueueLength int) Dispatcher
NewAgentDispatcher creates a new haystack-agent dispatcher
func NewDefaultAgentDispatcher ¶
func NewDefaultAgentDispatcher() Dispatcher
NewDefaultAgentDispatcher creates a new haystack-agent dispatcher
func NewDefaultHTTPDispatcher ¶
func NewDefaultHTTPDispatcher() Dispatcher
NewDefaultHTTPDispatcher creates a new http dispatcher
func NewFileDispatcher ¶
func NewFileDispatcher(filename string) Dispatcher
NewFileDispatcher creates a new file dispatcher
func NewHTTPDispatcher ¶
func NewHTTPDispatcher(url string, timeout time.Duration, headers map[string]string, maxQueueLength int) Dispatcher
NewHTTPDispatcher creates a new haystack-agent dispatcher
func NewInMemoryDispatcher ¶
func NewInMemoryDispatcher() Dispatcher
NewInMemoryDispatcher creates a new in memory dispatcher
type FileDispatcher ¶
type FileDispatcher struct {
// contains filtered or unexported fields
}
FileDispatcher file dispatcher
func (*FileDispatcher) Dispatch ¶
func (d *FileDispatcher) Dispatch(span *_Span)
Dispatch dispatches the span object
func (*FileDispatcher) DispatchProtoSpan ¶
func (d *FileDispatcher) DispatchProtoSpan(span *Span)
DispatchProtoSpan dispatches proto span object
func (*FileDispatcher) SetLogger ¶
func (d *FileDispatcher) SetLogger(logger Logger)
SetLogger sets the logger to use
type GrpcClient ¶
type GrpcClient struct {
// contains filtered or unexported fields
}
GrpcClient grpc client
func NewGrpcClient ¶
func NewGrpcClient(host string, port int, timeout time.Duration) *GrpcClient
NewGrpcClient returns a new grpc client
func (*GrpcClient) SetLogger ¶
func (c *GrpcClient) SetLogger(logger Logger)
SetLogger sets the logger
type HTTPClient ¶
type HTTPClient struct {
// contains filtered or unexported fields
}
HTTPClient a http client
func NewHTTPClient ¶
NewHTTPClient returns a new http client
func (*HTTPClient) SetLogger ¶
func (c *HTTPClient) SetLogger(logger Logger)
SetLogger sets the logger
type InMemoryDispatcher ¶
type InMemoryDispatcher struct {
// contains filtered or unexported fields
}
InMemoryDispatcher implements the Dispatcher interface
func (*InMemoryDispatcher) Close ¶
func (d *InMemoryDispatcher) Close()
Close down the inMemory dispatcher
func (*InMemoryDispatcher) Dispatch ¶
func (d *InMemoryDispatcher) Dispatch(span *_Span)
Dispatch dispatches the span object
func (*InMemoryDispatcher) DispatchProtoSpan ¶
func (d *InMemoryDispatcher) DispatchProtoSpan(span *Span)
DispatchProtoSpan dispatches proto span object
func (*InMemoryDispatcher) Name ¶
func (d *InMemoryDispatcher) Name() string
Name gives the Dispatcher name
func (*InMemoryDispatcher) SetLogger ¶
func (d *InMemoryDispatcher) SetLogger(logger Logger)
SetLogger sets the logger to use
type Log ¶
type Log struct { Timestamp int64 `protobuf:"varint,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"` Fields []*Tag `protobuf:"bytes,2,rep,name=fields,proto3" json:"fields,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
Log is a timestamped event with a set of tags.
func (*Log) Descriptor ¶
func (*Log) GetTimestamp ¶
func (*Log) ProtoMessage ¶
func (*Log) ProtoMessage()
func (*Log) XXX_DiscardUnknown ¶
func (m *Log) XXX_DiscardUnknown()
func (*Log) XXX_Unmarshal ¶
type Logger ¶
type Logger interface { Info(format string, v ...interface{}) Error(format string, v ...interface{}) Debug(format string, v ...interface{}) }
Logger defines a new logger interface
type NullLogger ¶
type NullLogger struct{}
NullLogger does nothing
func (NullLogger) Debug ¶
func (logger NullLogger) Debug(format string, v ...interface{})
Debug prints the info message
func (NullLogger) Error ¶
func (logger NullLogger) Error(format string, v ...interface{})
Error prints the error message
func (NullLogger) Info ¶
func (logger NullLogger) Info(format string, v ...interface{})
Info prints the info message
type Propagator ¶
type Propagator interface { // Inject takes `SpanContext` and injects it into `carrier` Inject(ctx *SpanContext, carrier interface{}) error // Extract `SpanContext` from the `carrier` Extract(carrier interface{}) (*SpanContext, error) }
Propagator defines the interface for injecting and extracing the SpanContext from the carrier
type PropagatorOpts ¶
type PropagatorOpts struct { TraceIDKEYName string SpanIDKEYName string ParentSpanIDKEYName string BaggagePrefixKEYName string }
PropagatorOpts defines the options need by a propagator
func (*PropagatorOpts) BaggageKeyPrefix ¶
func (p *PropagatorOpts) BaggageKeyPrefix() string
BaggageKeyPrefix returns the baggage key prefix
func (*PropagatorOpts) ParentSpanIDKEY ¶
func (p *PropagatorOpts) ParentSpanIDKEY() string
ParentSpanIDKEY returns the parent span id key in the propagator
func (*PropagatorOpts) SpanIDKEY ¶
func (p *PropagatorOpts) SpanIDKEY() string
SpanIDKEY returns the span id key in the propagator
func (*PropagatorOpts) TraceIDKEY ¶
func (p *PropagatorOpts) TraceIDKEY() string
TraceIDKEY returns the trace id key in the propagator
type RemoteClient ¶
RemoteClient remote client
type RemoteDispatcher ¶
type RemoteDispatcher struct {
// contains filtered or unexported fields
}
RemoteDispatcher dispatcher, client can be grpc or http
func (*RemoteDispatcher) Dispatch ¶
func (d *RemoteDispatcher) Dispatch(span *_Span)
Dispatch dispatches the span object
func (*RemoteDispatcher) DispatchProtoSpan ¶
func (d *RemoteDispatcher) DispatchProtoSpan(s *Span)
DispatchProtoSpan dispatches the proto span object
func (*RemoteDispatcher) Name ¶
func (d *RemoteDispatcher) Name() string
Name gives the Dispatcher name
func (*RemoteDispatcher) SetLogger ¶
func (d *RemoteDispatcher) SetLogger(logger Logger)
SetLogger sets the logger to use
type Span ¶
type Span struct { TraceId string `protobuf:"bytes,1,opt,name=traceId,proto3" json:"traceId,omitempty"` SpanId string `protobuf:"bytes,2,opt,name=spanId,proto3" json:"spanId,omitempty"` ParentSpanId string `protobuf:"bytes,3,opt,name=parentSpanId,proto3" json:"parentSpanId,omitempty"` ServiceName string `protobuf:"bytes,4,opt,name=serviceName,proto3" json:"serviceName,omitempty"` OperationName string `protobuf:"bytes,5,opt,name=operationName,proto3" json:"operationName,omitempty"` StartTime int64 `protobuf:"varint,6,opt,name=startTime,proto3" json:"startTime,omitempty"` Duration int64 `protobuf:"varint,7,opt,name=duration,proto3" json:"duration,omitempty"` Logs []*Log `protobuf:"bytes,8,rep,name=logs,proto3" json:"logs,omitempty"` Tags []*Tag `protobuf:"bytes,9,rep,name=tags,proto3" json:"tags,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
Span represents a unit of work performed by a service.
func (*Span) Descriptor ¶
func (*Span) GetDuration ¶
func (*Span) GetOperationName ¶
func (*Span) GetParentSpanId ¶
func (*Span) GetServiceName ¶
func (*Span) GetStartTime ¶
func (*Span) GetTraceId ¶
func (*Span) ProtoMessage ¶
func (*Span) ProtoMessage()
func (*Span) XXX_DiscardUnknown ¶
func (m *Span) XXX_DiscardUnknown()
func (*Span) XXX_Unmarshal ¶
type SpanAgentClient ¶
type SpanAgentClient interface {
Dispatch(ctx context.Context, in *Span, opts ...grpc.CallOption) (*DispatchResult, error)
}
SpanAgentClient is the client API for SpanAgent service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
func NewSpanAgentClient ¶
func NewSpanAgentClient(cc *grpc.ClientConn) SpanAgentClient
type SpanAgentServer ¶
type SpanAgentServer interface {
Dispatch(context.Context, *Span) (*DispatchResult, error)
}
SpanAgentServer is the server API for SpanAgent service.
type SpanContext ¶
type SpanContext struct { // traceID represents globally unique ID of the trace. TraceID string // spanID represents span ID that must be unique within its trace SpanID string // parentID refers to the ID of the parent span. // Should be empty if the current span is a root span. ParentID string //Context baggage. The is a snapshot in time. Baggage map[string]string // set to true if extracted using a extractor in tracer IsExtractedContext bool }
SpanContext implements opentracing.spanContext
func (SpanContext) ForeachBaggageItem ¶
func (context SpanContext) ForeachBaggageItem(handler func(k, v string) bool)
ForeachBaggageItem implements opentracing.spancontext
func (SpanContext) IsValid ¶
func (context SpanContext) IsValid() bool
IsValid indicates whether this context actually represents a valid trace.
func (SpanContext) ToString ¶
func (context SpanContext) ToString() string
ToString represents the string
func (SpanContext) WithBaggageItem ¶
func (context SpanContext) WithBaggageItem(key, value string) *SpanContext
WithBaggageItem creates a new context with an extra baggage item.
type Tag ¶
type Tag struct { Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` Type Tag_TagType `protobuf:"varint,2,opt,name=type,proto3,enum=Tag_TagType" json:"type,omitempty"` // Types that are valid to be assigned to Myvalue: // *Tag_VStr // *Tag_VLong // *Tag_VDouble // *Tag_VBool // *Tag_VBytes Myvalue isTag_Myvalue `protobuf_oneof:"myvalue"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
Tag is a strongly typed key/value pair. We use 'oneof' protobuf attribute to represent the possible tagTypes
func ConvertToProtoTag ¶
ConvertToProtoTag converts to proto tag
func (*Tag) Descriptor ¶
func (*Tag) GetMyvalue ¶
func (m *Tag) GetMyvalue() isTag_Myvalue
func (*Tag) GetType ¶
func (m *Tag) GetType() Tag_TagType
func (*Tag) GetVDouble ¶
func (*Tag) ProtoMessage ¶
func (*Tag) ProtoMessage()
func (*Tag) XXX_DiscardUnknown ¶
func (m *Tag) XXX_DiscardUnknown()
func (*Tag) XXX_OneofWrappers ¶
func (*Tag) XXX_OneofWrappers() []interface{}
XXX_OneofWrappers is for the internal use of the proto package.
func (*Tag) XXX_Unmarshal ¶
type Tag_TagType ¶
type Tag_TagType int32
TagType denotes the type of a Tag's value.
const ( Tag_STRING Tag_TagType = 0 Tag_DOUBLE Tag_TagType = 1 Tag_BOOL Tag_TagType = 2 Tag_LONG Tag_TagType = 3 Tag_BINARY Tag_TagType = 4 )
func (Tag_TagType) EnumDescriptor ¶
func (Tag_TagType) EnumDescriptor() ([]byte, []int)
func (Tag_TagType) String ¶
func (x Tag_TagType) String() string
type Tag_VBool ¶
type Tag_VBool struct {
VBool bool `protobuf:"varint,6,opt,name=vBool,proto3,oneof"`
}
type Tag_VBytes ¶
type Tag_VBytes struct {
VBytes []byte `protobuf:"bytes,7,opt,name=vBytes,proto3,oneof"`
}
type Tag_VDouble ¶
type Tag_VDouble struct {
VDouble float64 `protobuf:"fixed64,5,opt,name=vDouble,proto3,oneof"`
}
type Tag_VLong ¶
type Tag_VLong struct {
VLong int64 `protobuf:"varint,4,opt,name=vLong,proto3,oneof"`
}
type Tag_VStr ¶
type Tag_VStr struct {
VStr string `protobuf:"bytes,3,opt,name=vStr,proto3,oneof"`
}
type TextMapPropagator ¶
type TextMapPropagator struct {
// contains filtered or unexported fields
}
TextMapPropagator implements Propagator interface
func NewDefaultTextMapPropagator ¶
func NewDefaultTextMapPropagator() *TextMapPropagator
NewDefaultTextMapPropagator returns a default text map propagator
func NewTextMapPropagator ¶
func NewTextMapPropagator(opts PropagatorOpts, codex Codex) *TextMapPropagator
NewTextMapPropagator returns a text map propagator
func (*TextMapPropagator) Extract ¶
func (p *TextMapPropagator) Extract(carrier interface{}) (*SpanContext, error)
Extract the span context from the carrier
func (*TextMapPropagator) Inject ¶
func (p *TextMapPropagator) Inject(ctx *SpanContext, carrier interface{}) error
Inject injects the span context in the carrier
type Tracer ¶
type Tracer struct {
// contains filtered or unexported fields
}
Tracer implements the opentracing.tracer
func (*Tracer) DispatchSpan ¶
func (tracer *Tracer) DispatchSpan(span *_Span)
DispatchSpan dispatches the span to a dispatcher
func (*Tracer) Extract ¶
func (tracer *Tracer) Extract( format interface{}, carrier interface{}, ) (opentracing.SpanContext, error)
Extract implements Extract() method of opentracing.Tracer
func (*Tracer) Inject ¶
func (tracer *Tracer) Inject(ctx opentracing.SpanContext, format interface{}, carrier interface{}) error
Inject implements Inject() method of opentracing.Tracer
type TracerOption ¶
type TracerOption func(tracer *Tracer)
TracerOption is a function that sets some option on the tracer
type TracerOptions ¶
type TracerOptions struct{}
TracerOptions a list of tracer options
var TracerOptionsFactory TracerOptions
TracerOptionsFactory factory to create multiple tracer options
func (TracerOptions) Logger ¶
func (t TracerOptions) Logger(logger Logger) TracerOption
Logger set the logger type
func (TracerOptions) Propagator ¶
func (t TracerOptions) Propagator(format interface{}, propagator Propagator) TracerOption
Propagator registers a new Propagator
func (TracerOptions) Tag ¶
func (t TracerOptions) Tag(key string, value interface{}) TracerOption
Tag adds a common tag in every span
func (TracerOptions) UseDualSpanMode ¶
func (t TracerOptions) UseDualSpanMode() TracerOption
UseDualSpanMode sets the tracer in dual span mode