Documentation ¶
Index ¶
- func EndUserAttributesFromHTTPRequest(request *http.Request) []otelcore.KeyValue
- func HTTPAttributesFromHTTPStatusCode(code int) []otelcore.KeyValue
- func HTTPServerAttributesFromHTTPRequest(serverName, route string, request *http.Request) []otelcore.KeyValue
- func NetAttributesFromHTTPRequest(network string, request *http.Request) []otelcore.KeyValue
- func SpanStatusFromHTTPStatusCode(code int) (codes.Code, string)
- type Provider
- type Span
- func (ms *Span) AddEvent(ctx context.Context, name string, attrs ...otelcore.KeyValue)
- func (ms *Span) AddEventWithTimestamp(ctx context.Context, timestamp time.Time, name string, ...)
- func (ms *Span) End(options ...oteltrace.EndOption)
- func (ms *Span) IsRecording() bool
- func (ms *Span) RecordError(ctx context.Context, err error, opts ...oteltrace.ErrorOption)
- func (ms *Span) SetAttributes(attributes ...otelcore.KeyValue)
- func (ms *Span) SetName(name string)
- func (ms *Span) SetStatus(status codes.Code, msg string)
- func (ms *Span) SpanContext() otelcore.SpanContext
- func (ms *Span) Tracer() oteltrace.Tracer
- type Tracer
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func EndUserAttributesFromHTTPRequest ¶
EndUserAttributesFromHTTPRequest generates attributes of the enduser namespace as specified by the OpenTelemetry specification for a span.
func HTTPAttributesFromHTTPStatusCode ¶
HTTPAttributesFromHTTPStatusCode generates attributes of the http namespace as specified by the OpenTelemetry specification for a span.
func HTTPServerAttributesFromHTTPRequest ¶
func HTTPServerAttributesFromHTTPRequest(serverName, route string, request *http.Request) []otelcore.KeyValue
HTTPServerAttributesFromHTTPRequest generates attributes of the http namespace as specified by the OpenTelemetry specification for a span on the server side. Currently, only basic authentication is supported.
func NetAttributesFromHTTPRequest ¶
NetAttributesFromHTTPRequest generates attributes of the net namespace as specified by the OpenTelemetry specification for a span. The network parameter is a string that net.Dial function from standard library can understand.
Types ¶
type Span ¶
type Span struct { Name string Attributes map[otelcore.Key]otelcore.Value Kind oteltrace.SpanKind Status codes.Code ParentSpanID otelcore.SpanID // contains filtered or unexported fields }
Span is a mock span used in association with Tracer for testing purpose only.
func (*Span) AddEventWithTimestamp ¶
func (ms *Span) AddEventWithTimestamp(ctx context.Context, timestamp time.Time, name string, attrs ...otelcore.KeyValue)
AddEvent does nothing.
func (*Span) IsRecording ¶
IsRecording always returns false for Span.
func (*Span) RecordError ¶
RecordError does nothing.
func (*Span) SetAttributes ¶
SetAttributes adds an attribute to Attributes member.
func (*Span) SpanContext ¶
func (ms *Span) SpanContext() otelcore.SpanContext
SpanContext returns associated otelcore.SpanContext.
If the receiver is nil it returns an empty otelcore.SpanContext.
type Tracer ¶
type Tracer struct { // StartSpanID is used to initialize span ID. It is incremented // by one every time a new span is created. // // StartSpanID has to be aligned for 64-bit atomic operations. StartSpanID uint64 // Name of the tracer, received from the provider. Name string // Sampled specifies if the new span should be sampled or not. Sampled bool // OnSpanStarted is called every time a new span is started. OnSpanStarted func(span *Span) // contains filtered or unexported fields }
Tracer is a simple tracer used for testing purpose only. SpanID is atomically increased every time a new span is created.
func (*Tracer) EndedSpans ¶
func (*Tracer) Start ¶
func (mt *Tracer) Start(ctx context.Context, name string, o ...oteltrace.StartOption) (context.Context, oteltrace.Span)
Start starts a new Span and puts it into the context.
The function generates a new random TraceID if either there is no parent SpanContext in context or the WithNewRoot option is passed to the function. Otherwise the function will take the TraceID from parent SpanContext.
Currently no other StartOption has any effect here.