http

package
v2.693.0 Latest Latest
Warning

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

Go to latest
Published: Jul 21, 2026 License: MIT Imports: 19 Imported by: 0

Documentation

Overview

Package http provides small HTTP wrappers and helpers around the standard library net/http package.

This package primarily re-exports common net/http types and constants behind go-service aliases and provides a few convenience helpers used by transport wiring, such as:

  • NewClient, which applies a client timeout and wraps a RoundTripper with OpenTelemetry instrumentation when tracing or metrics are enabled,
  • NewServer, which builds an http.Server using configured timeouts and protocol settings,
  • NewTelemetryHandler, which wraps a handler with OpenTelemetry server instrumentation when tracing or metrics are enabled,
  • Router, which registers handlers on a mux together with route policy used by transport middleware,
  • Pattern and ParseServiceMethod, which help standardize route naming for telemetry.

Server construction reads timeout keys from options.Map (`read_timeout`, `write_timeout`, `idle_timeout`, `read_header_timeout`) and also supports `max_header_bytes` as an SI size string.

Start with NewClient and NewServer.

Index

Constants

View Source
const DefaultMaxHeaderBytes = http.DefaultMaxHeaderBytes

DefaultMaxHeaderBytes is an alias of http.DefaultMaxHeaderBytes.

View Source
const MethodConnect = http.MethodConnect

MethodConnect is an alias of http.MethodConnect.

View Source
const MethodDelete = http.MethodDelete

MethodDelete is an alias of http.MethodDelete.

View Source
const MethodGet = http.MethodGet

MethodGet is an alias of http.MethodGet.

View Source
const MethodHead = http.MethodHead

MethodHead is an alias of http.MethodHead.

View Source
const MethodOptions = http.MethodOptions

MethodOptions is an alias of http.MethodOptions.

View Source
const MethodPatch = http.MethodPatch

MethodPatch is an alias of http.MethodPatch.

View Source
const MethodPost = http.MethodPost

MethodPost is an alias of http.MethodPost.

View Source
const MethodPut = http.MethodPut

MethodPut is an alias of http.MethodPut.

View Source
const MethodTrace = http.MethodTrace

MethodTrace is an alias of http.MethodTrace.

View Source
const StatusAccepted = http.StatusAccepted

StatusAccepted is an alias of http.StatusAccepted.

View Source
const StatusAlreadyReported = http.StatusAlreadyReported

StatusAlreadyReported is an alias of http.StatusAlreadyReported.

View Source
const StatusBadGateway = http.StatusBadGateway

StatusBadGateway is an alias of http.StatusBadGateway.

View Source
const StatusBadRequest = http.StatusBadRequest

StatusBadRequest is an alias of http.StatusBadRequest.

View Source
const StatusClientClosedRequest = 499

StatusClientClosedRequest is the non-standard HTTP status code 499 used when the client closes the request.

View Source
const StatusConflict = http.StatusConflict

StatusConflict is an alias of http.StatusConflict.

View Source
const StatusContinue = http.StatusContinue

StatusContinue is an alias of http.StatusContinue.

View Source
const StatusCreated = http.StatusCreated

StatusCreated is an alias of http.StatusCreated.

View Source
const StatusEarlyHints = http.StatusEarlyHints

StatusEarlyHints is an alias of http.StatusEarlyHints.

View Source
const StatusExpectationFailed = http.StatusExpectationFailed

StatusExpectationFailed is an alias of http.StatusExpectationFailed.

View Source
const StatusFailedDependency = http.StatusFailedDependency

StatusFailedDependency is an alias of http.StatusFailedDependency.

View Source
const StatusForbidden = http.StatusForbidden

StatusForbidden is an alias of http.StatusForbidden.

View Source
const StatusFound = http.StatusFound

StatusFound is an alias of http.StatusFound.

View Source
const StatusGatewayTimeout = http.StatusGatewayTimeout

StatusGatewayTimeout is an alias of http.StatusGatewayTimeout.

View Source
const StatusGone = http.StatusGone

StatusGone is an alias of http.StatusGone.

View Source
const StatusHTTPVersionNotSupported = http.StatusHTTPVersionNotSupported

StatusHTTPVersionNotSupported is an alias of http.StatusHTTPVersionNotSupported.

View Source
const StatusIMUsed = http.StatusIMUsed

StatusIMUsed is an alias of http.StatusIMUsed.

View Source
const StatusInsufficientStorage = http.StatusInsufficientStorage

StatusInsufficientStorage is an alias of http.StatusInsufficientStorage.

View Source
const StatusInternalServerError = http.StatusInternalServerError

StatusInternalServerError is an alias of http.StatusInternalServerError.

View Source
const StatusLengthRequired = http.StatusLengthRequired

StatusLengthRequired is an alias of http.StatusLengthRequired.

View Source
const StatusLocked = http.StatusLocked

StatusLocked is an alias of http.StatusLocked.

View Source
const StatusLoopDetected = http.StatusLoopDetected

StatusLoopDetected is an alias of http.StatusLoopDetected.

View Source
const StatusMethodNotAllowed = http.StatusMethodNotAllowed

StatusMethodNotAllowed is an alias of http.StatusMethodNotAllowed.

View Source
const StatusMisdirectedRequest = http.StatusMisdirectedRequest

StatusMisdirectedRequest is an alias of http.StatusMisdirectedRequest.

View Source
const StatusMovedPermanently = http.StatusMovedPermanently

StatusMovedPermanently is an alias of http.StatusMovedPermanently.

View Source
const StatusMultiStatus = http.StatusMultiStatus

StatusMultiStatus is an alias of http.StatusMultiStatus.

View Source
const StatusMultipleChoices = http.StatusMultipleChoices

StatusMultipleChoices is an alias of http.StatusMultipleChoices.

View Source
const StatusNetworkAuthenticationRequired = http.StatusNetworkAuthenticationRequired

StatusNetworkAuthenticationRequired is an alias of http.StatusNetworkAuthenticationRequired.

View Source
const StatusNoContent = http.StatusNoContent

StatusNoContent is an alias of http.StatusNoContent.

View Source
const StatusNonAuthoritativeInfo = http.StatusNonAuthoritativeInfo

StatusNonAuthoritativeInfo is an alias of http.StatusNonAuthoritativeInfo.

View Source
const StatusNotAcceptable = http.StatusNotAcceptable

StatusNotAcceptable is an alias of http.StatusNotAcceptable.

View Source
const StatusNotExtended = http.StatusNotExtended

StatusNotExtended is an alias of http.StatusNotExtended.

View Source
const StatusNotFound = http.StatusNotFound

StatusNotFound is an alias of http.StatusNotFound.

View Source
const StatusNotImplemented = http.StatusNotImplemented

StatusNotImplemented is an alias of http.StatusNotImplemented.

View Source
const StatusNotModified = http.StatusNotModified

StatusNotModified is an alias of http.StatusNotModified.

View Source
const StatusOK = http.StatusOK

StatusOK is an alias of http.StatusOK.

View Source
const StatusPartialContent = http.StatusPartialContent

StatusPartialContent is an alias of http.StatusPartialContent.

View Source
const StatusPaymentRequired = http.StatusPaymentRequired

StatusPaymentRequired is an alias of http.StatusPaymentRequired.

View Source
const StatusPermanentRedirect = http.StatusPermanentRedirect

StatusPermanentRedirect is an alias of http.StatusPermanentRedirect.

View Source
const StatusPreconditionFailed = http.StatusPreconditionFailed

StatusPreconditionFailed is an alias of http.StatusPreconditionFailed.

View Source
const StatusPreconditionRequired = http.StatusPreconditionRequired

StatusPreconditionRequired is an alias of http.StatusPreconditionRequired.

View Source
const StatusProcessing = http.StatusProcessing

StatusProcessing is an alias of http.StatusProcessing.

View Source
const StatusProxyAuthRequired = http.StatusProxyAuthRequired

StatusProxyAuthRequired is an alias of http.StatusProxyAuthRequired.

View Source
const StatusRequestEntityTooLarge = http.StatusRequestEntityTooLarge

StatusRequestEntityTooLarge is an alias of http.StatusRequestEntityTooLarge.

View Source
const StatusRequestHeaderFieldsTooLarge = http.StatusRequestHeaderFieldsTooLarge

StatusRequestHeaderFieldsTooLarge is an alias of http.StatusRequestHeaderFieldsTooLarge.

View Source
const StatusRequestTimeout = http.StatusRequestTimeout

StatusRequestTimeout is an alias of http.StatusRequestTimeout.

View Source
const StatusRequestURITooLong = http.StatusRequestURITooLong

StatusRequestURITooLong is an alias of http.StatusRequestURITooLong.

View Source
const StatusRequestedRangeNotSatisfiable = http.StatusRequestedRangeNotSatisfiable

StatusRequestedRangeNotSatisfiable is an alias of http.StatusRequestedRangeNotSatisfiable.

View Source
const StatusResetContent = http.StatusResetContent

StatusResetContent is an alias of http.StatusResetContent.

View Source
const StatusSeeOther = http.StatusSeeOther

StatusSeeOther is an alias of http.StatusSeeOther.

View Source
const StatusServiceUnavailable = http.StatusServiceUnavailable

StatusServiceUnavailable is an alias of http.StatusServiceUnavailable.

View Source
const StatusSwitchingProtocols = http.StatusSwitchingProtocols

StatusSwitchingProtocols is an alias of http.StatusSwitchingProtocols.

View Source
const StatusTeapot = http.StatusTeapot

StatusTeapot is an alias of http.StatusTeapot.

View Source
const StatusTemporaryRedirect = http.StatusTemporaryRedirect

StatusTemporaryRedirect is an alias of http.StatusTemporaryRedirect.

View Source
const StatusTooEarly = http.StatusTooEarly

StatusTooEarly is an alias of http.StatusTooEarly.

View Source
const StatusTooManyRequests = http.StatusTooManyRequests

StatusTooManyRequests is an alias of http.StatusTooManyRequests.

View Source
const StatusUnauthorized = http.StatusUnauthorized

StatusUnauthorized is an alias of http.StatusUnauthorized.

View Source
const StatusUnavailableForLegalReasons = http.StatusUnavailableForLegalReasons

StatusUnavailableForLegalReasons is an alias of http.StatusUnavailableForLegalReasons.

View Source
const StatusUnprocessableEntity = http.StatusUnprocessableEntity

StatusUnprocessableEntity is an alias of http.StatusUnprocessableEntity.

View Source
const StatusUnsupportedMediaType = http.StatusUnsupportedMediaType

StatusUnsupportedMediaType is an alias of http.StatusUnsupportedMediaType.

View Source
const StatusUpgradeRequired = http.StatusUpgradeRequired

StatusUpgradeRequired is an alias of http.StatusUpgradeRequired.

View Source
const StatusUseProxy = http.StatusUseProxy

StatusUseProxy is an alias of http.StatusUseProxy.

View Source
const StatusVariantAlsoNegotiates = http.StatusVariantAlsoNegotiates

StatusVariantAlsoNegotiates is an alias of http.StatusVariantAlsoNegotiates.

View Source
const TimeFormat = http.TimeFormat

TimeFormat is the HTTP time format layout.

It is an alias of http.TimeFormat.

Variables

View Source
var DefaultTransport = http.DefaultTransport

DefaultTransport is an alias for http.DefaultTransport.

View Source
var ErrServerClosed = http.ErrServerClosed

ErrServerClosed is an alias for http.ErrServerClosed.

View Source
var ErrUseLastResponse = http.ErrUseLastResponse

ErrUseLastResponse is an alias for http.ErrUseLastResponse.

View Source
var NoBody = http.NoBody

NoBody is an alias for http.NoBody.

Functions

func IgnoreRedirect added in v2.442.0

func IgnoreRedirect(_ *Request, _ []*Request) error

IgnoreRedirect returns redirect responses without following them.

func IsCrossOriginRedirect added in v2.465.0

func IsCrossOriginRedirect(req *Request) bool

IsCrossOriginRedirect reports whether req is a redirected request whose previous request used a different origin.

func NewClient added in v2.205.0

func NewClient(rt http.RoundTripper, timeout time.Duration) *http.Client

NewClient constructs an HTTP client with a request timeout.

When tracing or metrics are enabled, the returned client wraps the provided RoundTripper with a telemetry transport. When tracing is enabled, it also installs an httptrace-based client trace derived from the request context.

The provided timeout is assigned to http.Client.Timeout (total time limit for requests, including connection time, redirects, and reading the response body).

func ParseServiceMethod added in v2.189.0

func ParseServiceMethod(req *http.Request) (string, string)

ParseServiceMethod derives a logical "service" and "method" name from an HTTP request.

This helper is intended for consistent telemetry naming. It attempts to derive names from the request path when it follows the conventional go-service route shape:

/<service>/<method>

If the request path matches that shape, ParseServiceMethod returns the extracted service/method pair.

Otherwise it falls back to:

  • method: lower-cased HTTP method (e.g. "get", "post")
  • service: a best-effort name derived from the path:
  • "root" when the path is empty or "/"
  • otherwise the path without the leading "/" (e.g. "/health" -> "health")

func ParseTime added in v2.584.0

func ParseTime(value string) (time.Time, error)

ParseTime parses an HTTP time value.

This is a thin wrapper around http.ParseTime and does not change semantics.

func Pattern added in v2.61.0

func Pattern(name env.Name, pattern string) string

Pattern constructs a route pattern of the form "/<name><pattern>".

This helper is used to namespace routes by service name so different services can share a router/mux without colliding, and so route names are consistent across telemetry, server registration, and tests.

Example:

Pattern(name, "/debug/pprof/") // -> "/my-service/debug/pprof/"

func Protocols

func Protocols() *http.Protocols

Protocols constructs an http.Protocols value enabling the HTTP protocols supported by go-service.

The returned configuration enables:

  • HTTP/1.1
  • HTTP/2 (when negotiated, typically over TLS)
  • h2c (unencrypted HTTP/2)

This helper is used by go-service HTTP server and transport construction to consistently enable the same protocol set across servers and clients.

func SameOrigin added in v2.458.0

func SameOrigin(prev, next *url.URL) bool

SameOrigin reports whether prev and next use the same URL origin.

func SameOriginRedirect added in v2.441.0

func SameOriginRedirect(req *Request, via []*Request) error

SameOriginRedirect limits same-origin redirect chains to the standard Go limit of ten requests.

It is intended for clients that add credentials or signatures in RoundTripper middleware, where Go's default cross-origin sensitive-header stripping is not enough because middleware may mint fresh credentials for each redirected request.

func StatusText added in v2.21.0

func StatusText(code int) string

StatusText returns the standard HTTP status text for the given status code.

This is a thin wrapper around net/http.StatusText.

func Transport

func Transport(cfg *tls.Config) *http.Transport

Transport constructs a tuned *http.Transport with reasonable defaults and an optional TLS config.

This helper is intended for services and clients that want consistent HTTP transport behavior without having to re-specify common timeouts and connection pool limits.

Defaults applied:

  • Proxy: http.ProxyFromEnvironment
  • ForceAttemptHTTP2: true (enables HTTP/2 where supported by the server and TLS config)
  • Dialer: 1m connect timeout, 30s TCP keepalive
  • Connection pool limits: 100 max total idle, 100 max per host, 100 max conns per host
  • Timeouts: 90s idle conn timeout, 10s TLS handshake timeout, 1s expect-continue timeout
  • Protocols: set via Protocols() (go-service HTTP protocol configuration)

TLS behavior:

  • If cfg is non-nil it is assigned to [Transport.TLSClientConfig].
  • If cfg is nil, the standard library defaults apply.

Types

type ChainedHandler added in v2.407.0

type ChainedHandler = negroni.Handler

ChainedHandler is an alias for negroni.Handler.

type ChainedHandlers added in v2.407.0

type ChainedHandlers = negroni.Negroni

ChainedHandlers is an alias for negroni.Negroni.

func NewChainedHandlers added in v2.407.0

func NewChainedHandlers(handlers ...ChainedHandler) *ChainedHandlers

NewChainedHandlers constructs an HTTP middleware chain.

type Client added in v2.21.0

type Client = http.Client

Client is an alias for net/http.Client.

It is provided so go-service code can depend on a consistent import path while preserving standard library semantics.

type ClosingRoundTripper added in v2.466.0

type ClosingRoundTripper func(req *Request) (*Response, error, bool)

ClosingRoundTripper adapts a function to RoundTripper while making request-body ownership explicit.

The function's third return value reports whether ClosingRoundTripper should close req.Body before returning. Return true when the function rejects the request locally without delegating to another RoundTripper. Return false after delegating because the delegated RoundTripper owns the request body.

func (ClosingRoundTripper) RoundTrip added in v2.466.0

func (s ClosingRoundTripper) RoundTrip(req *Request) (*Response, error)

RoundTrip calls s and closes req.Body when s asks it to.

type Handler added in v2.8.0

type Handler = http.Handler

Handler is an alias for net/http.Handler.

It is provided so go-service code can depend on a consistent import path while preserving standard library semantics.

func MaxBytesHandler added in v2.331.0

func MaxBytesHandler(h Handler, n int64) Handler

MaxBytesHandler wraps h so inbound request bodies are limited to n bytes.

This is a thin wrapper around net/http.MaxBytesHandler.

func NewNotFoundHandler added in v2.396.0

func NewNotFoundHandler(mux *ServeMux, pool *sync.BufferPool, handlers ...NotFoundHandler) Handler

NewNotFoundHandler wraps mux and lets handlers replace generated 404 responses.

Non-404 mux responses are flushed unchanged. This preserves method handling such as 405 Method Not Allowed while still allowing MVC, REST, or RPC packages to provide typed not-found responses.

func NewTelemetryHandler added in v2.589.0

func NewTelemetryHandler(handler Handler, operation string) Handler

NewTelemetryHandler wraps handler with OpenTelemetry instrumentation when tracing or metrics are enabled.

type HandlerFunc added in v2.22.0

type HandlerFunc = http.HandlerFunc

HandlerFunc is an alias for net/http.HandlerFunc.

It is provided so go-service code can depend on a consistent import path while preserving standard library semantics.

type Header = http.Header

Header is an alias for net/http.Header.

It is provided so go-service code can depend on a consistent import path while preserving standard library semantics.

type MaxBytesError added in v2.331.0

type MaxBytesError = http.MaxBytesError

MaxBytesError is an alias for net/http.MaxBytesError.

It is returned when MaxBytesReader or MaxBytesHandler observes an inbound request body exceeding the configured byte limit.

type NotFoundHandler added in v2.396.0

type NotFoundHandler func(res ResponseWriter, req *Request) bool

NotFoundHandler handles an unmatched mux request.

It returns true when it has written a response. Returning false lets the next handler decide.

type Request added in v2.21.0

type Request = http.Request

Request is an alias for net/http.Request.

It is provided so go-service code can depend on a consistent import path while preserving standard library semantics.

func NewRequestWithContext added in v2.21.0

func NewRequestWithContext(ctx context.Context, method, url string, body io.Reader) (*Request, error)

NewRequestWithContext constructs a new outgoing HTTP request with ctx.

This is a thin wrapper around net/http.NewRequestWithContext. The returned request is canceled when ctx is canceled.

type Response added in v2.21.0

type Response = http.Response

Response is an alias for net/http.Response.

It is provided so go-service code can depend on a consistent import path while preserving standard library semantics.

type ResponseWriter added in v2.22.0

type ResponseWriter = http.ResponseWriter

ResponseWriter is an alias for net/http.ResponseWriter.

It is provided so go-service code can depend on a consistent import path while preserving standard library semantics.

type RoundTripper added in v2.21.0

type RoundTripper = http.RoundTripper

RoundTripper is an alias for net/http.RoundTripper.

It is provided so go-service code can depend on a consistent import path while preserving standard library semantics.

type RoutePolicy added in v2.643.0

type RoutePolicy struct {
	// contains filtered or unexported fields
}

RoutePolicy stores route policy used by HTTP transport middleware.

Route registration code records policy here so middleware can make exact route decisions without inferring intent from path substrings. RoutePolicy is intended to be populated during startup before serving requests.

func NewRoutePolicy added in v2.643.0

func NewRoutePolicy() *RoutePolicy

NewRoutePolicy constructs an empty route policy registry.

func (*RoutePolicy) AllowUnauthenticated added in v2.643.0

func (r *RoutePolicy) AllowUnauthenticated(pattern string)

AllowUnauthenticated marks pattern as not requiring transport token authentication.

func (*RoutePolicy) IsOperation added in v2.643.0

func (r *RoutePolicy) IsOperation(req *Request) bool

IsOperation reports whether req targets a registered operation path.

func (*RoutePolicy) IsUnauthenticated added in v2.643.0

func (r *RoutePolicy) IsUnauthenticated(req *Request) bool

IsUnauthenticated reports whether req targets a route that does not require transport token authentication.

func (*RoutePolicy) Operation added in v2.643.0

func (r *RoutePolicy) Operation(pattern string)

Operation marks pattern as a service-owned operation path.

Operation matching is path-only so method mismatches can reach the mux and receive normal method handling.

type Router added in v2.643.0

type Router struct {
	// contains filtered or unexported fields
}

Router registers HTTP handlers and their route policy on a mux.

func NewRouter added in v2.643.0

func NewRouter(mux *ServeMux, routePolicy *RoutePolicy) *Router

NewRouter constructs a Router backed by mux and routePolicy.

func (*Router) Handle added in v2.643.0

func (r *Router) Handle(pattern string, handler Handler)

Handle registers handler for pattern on the Router's mux.

func (*Router) HandleOperation added in v2.643.0

func (r *Router) HandleOperation(pattern string, handler Handler)

HandleOperation registers handler and marks pattern as a service-owned operation path.

func (*Router) HandleOperationFunc added in v2.643.0

func (r *Router) HandleOperationFunc(pattern string, handler HandlerFunc)

HandleOperationFunc registers handler and marks pattern as a service-owned operation path.

func (*Router) HandleUnauthenticated added in v2.643.0

func (r *Router) HandleUnauthenticated(pattern string, handler Handler)

HandleUnauthenticated registers handler and marks pattern as not requiring transport token authentication.

type ServeMux added in v2.5.0

type ServeMux = http.ServeMux

ServeMux is an alias for net/http.ServeMux.

It is provided so go-service code can depend on a consistent import path while preserving standard library semantics.

func NewServeMux added in v2.7.0

func NewServeMux() *ServeMux

NewServeMux constructs a new HTTP request multiplexer.

This is a thin wrapper around net/http.NewServeMux.

type Server

type Server = http.Server

Server is an alias for net/http.Server.

It is provided so go-service code can depend on a consistent import path while preserving standard library semantics.

func NewServer

func NewServer(options options.Map, timeout time.Duration, handler Handler) *Server

NewServer constructs an HTTP server with common timeout defaults and supported protocol settings.

Timeouts are derived from options first (if present) and fall back to the provided timeout value:

  • read_timeout
  • write_timeout
  • idle_timeout
  • read_header_timeout

Additional low-level server tuning may be provided through options using:

  • max_header_bytes

Protocols are configured via Protocols().

Note: options.NonNegativeDuration uses MustParseDuration under the hood; invalid or negative option values will panic at server construction time.

Directories

Path Synopsis
Package body provides request-body handling helpers for HTTP handlers.
Package body provides request-body handling helpers for HTTP handlers.
Package client provides a content-aware HTTP client wrapper used by go-service.
Package client provides a content-aware HTTP client wrapper used by go-service.
Package config contains HTTP transport configuration types used by go-service.
Package config contains HTTP transport configuration types used by go-service.
Package content provides HTTP content negotiation helpers used by go-service.
Package content provides HTTP content negotiation helpers used by go-service.
Package errors provides HTTP-specific error helpers for go-service.
Package errors provides HTTP-specific error helpers for go-service.
Package events provides CloudEvents HTTP helpers behind the go-service import path.
Package events provides CloudEvents HTTP helpers behind the go-service import path.
Package media defines common HTTP media type constants used by go-service.
Package media defines common HTTP media type constants used by go-service.
Package meta provides HTTP-specific context metadata helpers and middleware for go-service.
Package meta provides HTTP-specific context metadata helpers and middleware for go-service.
Package mvc provides a small MVC-style HTML rendering layer for go-service HTTP servers.
Package mvc provides a small MVC-style HTML rendering layer for go-service HTTP servers.
Package rest provides REST-style HTTP handler registration and client helpers for go-service.
Package rest provides REST-style HTTP handler registration and client helpers for go-service.
Package rpc provides RPC-style HTTP handler registration and client helpers for go-service.
Package rpc provides RPC-style HTTP handler registration and client helpers for go-service.
Package server provides HTTP server adapters and lifecycle wiring for go-service.
Package server provides HTTP server adapters and lifecycle wiring for go-service.
Package status provides helpers for working with HTTP status codes and status errors in go-service.
Package status provides helpers for working with HTTP status codes and status errors in go-service.
Package telemetry provides minimal, stable helpers for wiring OpenTelemetry instrumentation into net/http clients and servers.
Package telemetry provides minimal, stable helpers for wiring OpenTelemetry instrumentation into net/http clients and servers.

Jump to

Keyboard shortcuts

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