Documentation
¶
Overview ¶
Package server provides a preconfigured HTTP server with diagnostic hooks.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var Set = wire.NewSet( New, Options{}, wire.Value(&DefaultDriver{}), wire.Bind(new(driver.Server), new(DefaultDriver)), )
Set is a Wire provider set that produces a *Server given the fields of Options. This set might add new inputs over time, but they can always be the zero value.
Functions ¶
This section is empty.
Types ¶
type DefaultDriver ¶ added in v0.7.0
DefaultDriver implements the driver.Server interface. The zero value is a valid http.Server.
func NewDefaultDriver ¶ added in v0.7.0
func NewDefaultDriver() *DefaultDriver
NewDefaultDriver creates a driver with an http.Server with default timeouts.
func (*DefaultDriver) ListenAndServe ¶ added in v0.7.0
func (dd *DefaultDriver) ListenAndServe(addr string, h http.Handler) error
ListenAndServe sets the address and handler on DefaultDriver's http.Server, then calls ListenAndServe on it.
type Options ¶
type Options struct {
// RequestLogger specifies the logger that will be used to log requests.
RequestLogger requestlog.Logger
// HealthChecks specifies the health checks to be run when the
// /healthz/readiness endpoint is requested.
HealthChecks []health.Checker
// TraceExporter exports sampled trace spans.
TraceExporter trace.Exporter
// DefaultSamplingPolicy is a function that takes a
// trace.SamplingParameters struct and returns a true or false decision about
// whether it should be sampled and exported.
DefaultSamplingPolicy trace.Sampler
// Driver serves HTTP requests.
Driver driver.Server
}
Options is the set of optional parameters.
type Server ¶
type Server struct {
// contains filtered or unexported fields
}
Server is a preconfigured HTTP server with diagnostic hooks. The zero value is a server with the default options.
func (*Server) ListenAndServe ¶
ListenAndServe is a wrapper to use wherever http.ListenAndServe is used. It wraps the passed-in http.Handler with a handler that handles tracing and request logging. If the handler is nil, then http.DefaultServeMux will be used. A configured Requestlogger will log all requests except HealthChecks.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package driver defines an interface for custom HTTP listeners.
|
Package driver defines an interface for custom HTTP listeners. |
|
Package sdserver provides the diagnostic hooks for a server using Stackdriver.
|
Package sdserver provides the diagnostic hooks for a server using Stackdriver. |
|
Package xrayserver provides the diagnostic hooks for a server using AWS X-Ray.
|
Package xrayserver provides the diagnostic hooks for a server using AWS X-Ray. |