Documentation ¶
Index ¶
- func NewMiddleware(options ...MiddlewareOption) func(http.Handler) http.Handler
- func NewTracer(logger logevent.Logger, serviceName string, hostPort string) (opentracing.Tracer, error)
- func NewTransport(options ...TransportOption) func(c http.RoundTripper) http.RoundTripper
- func SpanIDFromContext(ctx context.Context) string
- func TraceIDFromContext(ctx context.Context) string
- type Middleware
- type MiddlewareOption
- type Transport
- type TransportOption
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewMiddleware ¶
func NewMiddleware(options ...MiddlewareOption) func(http.Handler) http.Handler
NewMiddleware creates a middleware.
func NewTracer ¶
func NewTracer(logger logevent.Logger, serviceName string, hostPort string) (opentracing.Tracer, error)
NewTracer generates an opentracing.Tracer implementation that uses the given Logger and metadata when generating and emitting spans.
func NewTransport ¶
func NewTransport(options ...TransportOption) func(c http.RoundTripper) http.RoundTripper
NewTransport creats an http.RoundTripper wrapper that injects zipkin headers into all outgoing requests.
func SpanIDFromContext ¶
SpanIDFromContext returns the active TraceID value as a string.
func TraceIDFromContext ¶
TraceIDFromContext returns the active TraceID value as a string.
Types ¶
type Middleware ¶
type Middleware struct {
// contains filtered or unexported fields
}
Middleware adds zipkin style request tracing.
func (*Middleware) ServeHTTP ¶
func (h *Middleware) ServeHTTP(w http.ResponseWriter, r *http.Request)
type MiddlewareOption ¶
type MiddlewareOption func(*Middleware) *Middleware
MiddlewareOption is a configuration setting for the HTTP middleware.
func MiddlewareOptionHostPort ¶
func MiddlewareOptionHostPort(hostPort string) MiddlewareOption
MiddlewareOptionHostPort sets host:port annotation used to represent the service in spans associated with the incoming request. The default value of this option is 0.0.0.0:80.
func MiddlewareOptionServiceName ¶
func MiddlewareOptionServiceName(name string) MiddlewareOption
MiddlewareOptionServiceName sets the service name annotation of the spans associated with the incoming request. The default value of this option is HTTPService.
type Transport ¶
type Transport struct {
// contains filtered or unexported fields
}
Transport adds zipkin style request tracing headers to outgoing requests.
type TransportOption ¶
TransportOption is a configuration setting for the Transport wrapper.
func TransportOptionPeerName ¶
func TransportOptionPeerName(name string) TransportOption
TransportOptionPeerName sets the name of the remote peer being called. This setting establishes a single name for the peer being used in all outgoing calls. The default value for peers is dependency.
func TransportOptionPeerNamer ¶
func TransportOptionPeerNamer(namer func(*http.Request) string) TransportOption
TransportOptionPeerNamer is similar to TransportOptionPeerName but allows for mapping an outgoing request object to a particular peer name. This can be used for cases when an HTTP transport is used to call multiple dependencies instead of a single one.
func TransportOptionSpanName ¶
func TransportOptionSpanName(name string) TransportOption
TransportOptionSpanName sets the name of the zipkin span for the outgoing request. The default value for this is OutgoingHTTPRequest.