Documentation ¶
Overview ¶
Package http provides functions to trace the net/http package (https://golang.org/pkg/net/http).
Example ¶
package main import ( "net/http" httptrace "gopkg.in/DataDog/dd-trace-go.v1/contrib/net/http" ) func main() { mux := httptrace.NewServeMux() mux.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { w.Write([]byte("Hello World!\n")) }) http.ListenAndServe(":8080", mux) }
Output:
Example (WithServiceName) ¶
package main import ( "net/http" httptrace "gopkg.in/DataDog/dd-trace-go.v1/contrib/net/http" ) func main() { mux := httptrace.NewServeMux(httptrace.WithServiceName("my-service")) mux.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { w.Write([]byte("Hello World!\n")) }) http.ListenAndServe(":8080", mux) }
Output:
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func WrapHandler ¶
WrapHandler wraps an http.Handler with tracing using the given service and resource.
func WrapRoundTripper ¶ added in v1.2.0
func WrapRoundTripper(rt http.RoundTripper, opts ...RoundTripperOption) http.RoundTripper
WrapRoundTripper returns a new RoundTripper which traces all requests sent over the transport.
Types ¶
type MuxOption ¶
type MuxOption func(*muxConfig)
MuxOption represents an option that can be passed to NewServeMux.
func WithServiceName ¶
WithServiceName sets the given service name for the returned ServeMux.
type RoundTripperAfterFunc ¶ added in v1.2.0
A RoundTripperAfterFunc can be used to modify a span after an http RoundTrip is made. It is possible for the http Response to be nil.
type RoundTripperBeforeFunc ¶ added in v1.2.0
A RoundTripperBeforeFunc can be used to modify a span before an http RoundTrip is made.
type RoundTripperOption ¶ added in v1.2.0
type RoundTripperOption func(*roundTripperConfig)
A RoundTripperOption represents an option that can be passed to WrapRoundTripper.
func WithAfter ¶ added in v1.2.0
func WithAfter(f RoundTripperAfterFunc) RoundTripperOption
WithAfter adds a RoundTripperAfterFunc to the RoundTripper config.
func WithBefore ¶ added in v1.2.0
func WithBefore(f RoundTripperBeforeFunc) RoundTripperOption
WithBefore adds a RoundTripperBeforeFunc to the RoundTripper config.
type ServeMux ¶
ServeMux is an HTTP request multiplexer that traces all the incoming requests.
func NewServeMux ¶
NewServeMux allocates and returns an http.ServeMux augmented with the global tracer.
func (*ServeMux) ServeHTTP ¶
func (mux *ServeMux) ServeHTTP(w http.ResponseWriter, r *http.Request)
ServeHTTP dispatches the request to the handler whose pattern most closely matches the request URL. We only need to rewrite this function to be able to trace all the incoming requests to the underlying multiplexer