otelrestful

package module
v0.0.0-...-1e3363d Latest Latest
Warning

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

Go to latest
Published: Nov 19, 2023 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package otelrestful instruments github.com/emicklei/go-restful.

Instrumentation is provided to trace the emicklei/go-restful/v3 package (https://github.com/emicklei/go-restful).

Instrumentation of an incoming request is achieved via a go-restful FilterFunc called `OTelFilterFunc` which may be applied at any one of

  • the container level
  • webservice level
  • route level

Index

Constants

View Source
const ScopeName = "github.com/dillonstreator/opentelemetry-go-contrib/instrumentation/github.com/emicklei/go-restful/otelrestful"

ScopeName is the instrumentation scope name.

Variables

This section is empty.

Functions

func OTelFilter

func OTelFilter(service string, opts ...Option) restful.FilterFunction

OTelFilter returns a restful.FilterFunction which will trace an incoming request.

The service parameter should describe the name of the (virtual) server handling the request. Options can be applied to configure the tracer and propagators used for this filter.

func SemVersion deprecated

func SemVersion() string

SemVersion is the semantic version to be supplied to tracer/meter creation.

Deprecated: Use Version instead.

func Version

func Version() string

Version is the current release version of the go-restful instrumentation.

Types

type Option

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

Option applies a configuration value.

func WithPropagators

func WithPropagators(propagators propagation.TextMapPropagator) Option

WithPropagators specifies propagators to use for extracting information from the HTTP requests. If none are specified, global ones will be used.

func WithPublicEndpoint

func WithPublicEndpoint() Option

WithPublicEndpoint configures the Handler to link the span with an incoming span context. If this option is not provided, then the association is a child association instead of a link.

func WithPublicEndpointFn

func WithPublicEndpointFn(fn func(*http.Request) bool) Option

WithPublicEndpointFn runs with every request, and allows conditionnally configuring the Handler to link the span with an incoming span context. If this option is not provided or returns false, then the association is a child association instead of a link. Note: WithPublicEndpoint takes precedence over WithPublicEndpointFn.

func WithTracerProvider

func WithTracerProvider(provider oteltrace.TracerProvider) Option

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

Directories

Path Synopsis
internal
test module

Jump to

Keyboard shortcuts

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