tracer

package
v0.2.10-3 Latest Latest
Warning

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

Go to latest
Published: Oct 27, 2022 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckSetDefaultTextMapPropagator

func CheckSetDefaultTextMapPropagator()

CheckSetDefaultTextMapPropagator sets the default TextMapPropagator if it is not set previously.

func GetBaggageMap

func GetBaggageMap(ctx context.Context) *gmap.StrAnyMap

GetBaggageMap retrieves and returns the baggage values as map.

func GetBaggageVar

func GetBaggageVar(ctx context.Context, key string) *gvar.Var

GetBaggageVar retrieves value and returns a *gvar.Var for specified key from baggage.

func GetDefaultTextMapPropagator

func GetDefaultTextMapPropagator() propagation.TextMapPropagator

GetDefaultTextMapPropagator returns the default propagator for context propagation between peers.

func GetSpanID

func GetSpanID(ctx context.Context) string

GetSpanID retrieves and returns SpanId from context. It returns an empty string is tracing feature is not activated.

func GetTraceID

func GetTraceID(ctx context.Context) string

GetTraceID retrieves and returns TraceId from context. It returns an empty string is tracing feature is not activated.

func MaxContentLogSize

func MaxContentLogSize() int

MaxContentLogSize returns the max log size for request and response body, especially for HTTP/RPC request.

func SetBaggageMap

func SetBaggageMap(ctx context.Context, data map[string]interface{}) context.Context

SetBaggageMap is a convenient function for adding map key-value pairs to baggage. Note that it uses attribute.Any to set the key-value pair.

func SetBaggageValue

func SetBaggageValue(ctx context.Context, key string, value interface{}) context.Context

SetBaggageValue is a convenient function for adding one key-value pair to baggage. Note that it uses attribute.Any to set the key-value pair.

func WithTraceID

func WithTraceID(ctx context.Context, traceID string) (context.Context, error)

WithTraceID injects custom trace id into context to propagate.

Types

type Baggage

type Baggage struct {
	// contains filtered or unexported fields
}

Baggage holds the data through all tracing spans.

func NewBaggage

func NewBaggage(ctx context.Context) *Baggage

NewBaggage creates and returns a new Baggage object from given tracing context.

func (*Baggage) Ctx

func (b *Baggage) Ctx() context.Context

Ctx returns the context that Baggage holds.

func (*Baggage) GetMap

func (b *Baggage) GetMap() *gmap.StrAnyMap

GetMap retrieves and returns the baggage values as map.

func (*Baggage) GetVar

func (b *Baggage) GetVar(key string) *gvar.Var

GetVar retrieves value and returns a *gvar.Var for specified key from baggage.

func (*Baggage) SetMap

func (b *Baggage) SetMap(data map[string]interface{}) context.Context

SetMap is a convenient function for adding map key-value pairs to baggage. Note that it uses attribute.Any to set the key-value pair.

func (*Baggage) SetValue

func (b *Baggage) SetValue(key string, value interface{}) context.Context

SetValue is a convenient function for adding one key-value pair to baggage. Note that it uses attribute.Any to set the key-value pair.

type Carrier

type Carrier map[string]interface{}

Carrier is the storage medium used by a TextMapPropagator.

func NewCarrier

func NewCarrier(data ...map[string]interface{}) Carrier

NewCarrier creates and returns a Carrier.

func (Carrier) Get

func (c Carrier) Get(k string) string

Get returns the value associated with the passed key.

func (Carrier) Keys

func (c Carrier) Keys() []string

Keys lists the keys stored in this carrier.

func (Carrier) MustMarshal

func (c Carrier) MustMarshal() []byte

MustMarshal .returns the JSON encoding of c

func (Carrier) Set

func (c Carrier) Set(k, v string)

Set stores the key-value pair.

func (Carrier) String

func (c Carrier) String() string

String converts and returns current Carrier as string.

func (Carrier) UnmarshalJSON

func (c Carrier) UnmarshalJSON(b []byte) error

UnmarshalJSON implements interface UnmarshalJSON for package json.

type Option

type Option interface {
	// contains filtered or unexported methods
}

Option specifies instrumentation configuration options.

func WithAttributes

func WithAttributes(attrs ...attribute.KeyValue) Option

WithAttributes specifies additional attributes to be added to the span.

func WithDisableSQLStatementInBaggage

func WithDisableSQLStatementInBaggage() Option

WithDisableSQLStatementInBaggage will disable logging the SQL statement in the span's baggage.

func WithTracerProvider

func WithTracerProvider(provider trace.TracerProvider) Option

WithTracerProvider specifies a tracer provider to use for creating a tracer. If none is specified, the global provider is used.

func WithTrimSQLInSpanName

func WithTrimSQLInSpanName() Option

WithTrimSQLInSpanName will use the SQL statement's first word as the span name. By default, the whole SQL statement is used as a span name, where applicable.

type Span

type Span struct {
	trace.Span
}

Span warps trace.Span for compatibility and extension.

func NewSpan

func NewSpan(ctx context.Context, spanName string, opts ...trace.SpanStartOption) (context.Context, *Span)

NewSpan creates a span using default tracer.

type Tracer

type Tracer struct {
	trace.Tracer
}

Tracer warps trace.Tracer for compatibility and extension.

func NewTracer

func NewTracer(opts ...Option) *Tracer

NewTracer returns a new Tracer.

func (*Tracer) TraceBatchEnd

func (t *Tracer) TraceBatchEnd(ctx context.Context, _ *pgx.Conn, data pgx.TraceBatchEndData)

TraceBatchEnd is called at the end of SendBatch calls.

func (*Tracer) TraceBatchQuery

func (t *Tracer) TraceBatchQuery(ctx context.Context, conn *pgx.Conn, data pgx.TraceBatchQueryData)

TraceBatchQuery is called at the after each query in a batch.

func (*Tracer) TraceBatchStart

func (t *Tracer) TraceBatchStart(ctx context.Context, conn *pgx.Conn, data pgx.TraceBatchStartData) context.Context

TraceBatchStart is called at the beginning of SendBatch calls. The returned context is used for the rest of the call and will be passed to TraceBatchQuery and TraceBatchEnd.

func (*Tracer) TraceConnectEnd

func (t *Tracer) TraceConnectEnd(ctx context.Context, data pgx.TraceConnectEndData)

TraceConnectEnd is called at the end of Connect and ConnectConfig calls.

func (*Tracer) TraceConnectStart

func (t *Tracer) TraceConnectStart(ctx context.Context, data pgx.TraceConnectStartData) context.Context

TraceConnectStart is called at the beginning of Connect and ConnectConfig calls. The returned context is used for the rest of the call and will be passed to TraceConnectEnd.

func (*Tracer) TraceCopyFromEnd

func (t *Tracer) TraceCopyFromEnd(ctx context.Context, _ *pgx.Conn, data pgx.TraceCopyFromEndData)

TraceCopyFromEnd is called at the end of CopyFrom calls.

func (*Tracer) TraceCopyFromStart

func (t *Tracer) TraceCopyFromStart(ctx context.Context, conn *pgx.Conn, data pgx.TraceCopyFromStartData) context.Context

TraceCopyFromStart is called at the beginning of CopyFrom calls. The returned context is used for the rest of the call and will be passed to TraceCopyFromEnd.

func (*Tracer) TracePrepareEnd

func (t *Tracer) TracePrepareEnd(ctx context.Context, _ *pgx.Conn, data pgx.TracePrepareEndData)

TracePrepareEnd is called at the end of Prepare calls.

func (*Tracer) TracePrepareStart

func (t *Tracer) TracePrepareStart(ctx context.Context, conn *pgx.Conn, data pgx.TracePrepareStartData) context.Context

TracePrepareStart is called at the beginning of Prepare calls. The returned context is used for the rest of the call and will be passed to TracePrepareEnd.

func (*Tracer) TraceQueryEnd

func (t *Tracer) TraceQueryEnd(ctx context.Context, _ *pgx.Conn, data pgx.TraceQueryEndData)

TraceQueryEnd is called at the end of Query, QueryRow, and Exec calls.

func (*Tracer) TraceQueryStart

func (t *Tracer) TraceQueryStart(ctx context.Context, conn *pgx.Conn, data pgx.TraceQueryStartData) context.Context

TraceQueryStart is called at the beginning of Query, QueryRow, and Exec calls. The returned context is used for the rest of the call and will be passed to TraceQueryEnd.

Jump to

Keyboard shortcuts

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