Documentation ¶
Overview ¶
Package apmechov4 provides middleware for the version 4 of Echo framework, for tracing HTTP requests.
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Middleware ¶
func Middleware(o ...Option) echo.MiddlewareFunc
Middleware returns a new Echo middleware handler for tracing requests and reporting errors.
This middleware will recover and report panics, so it can be used instead of echo/middleware.Recover.
By default, the middleware will use apm.DefaultTracer(). Use WithTracer to specify an alternative tracer.
Example ¶
e := echo.New() e.Use(apmecho.Middleware()) e.GET("/hello/:name", func(c echo.Context) error { // The request context contains an apm.Transaction, // so spans can be reported by passing the context // to apm.StartSpan. span, _ := apm.StartSpan(c.Request().Context(), "work", "custom") defer span.End() return nil })
Output:
Types ¶
type Option ¶
type Option func(*options)
Option sets options for tracing.
func WithRequestIgnorer ¶
func WithRequestIgnorer(r apmhttp.RequestIgnorerFunc) Option
WithRequestIgnorer returns a Option which sets r as the function to use to determine whether or not a request should be ignored. If r is nil, all requests will be reported.
func WithRequestName ¶ added in v2.2.0
func WithRequestName(r RequestNameFunc) Option
WithRequestName returns an Option which sets r as the function to use to obtain the transaction name for the given echo request.
func WithTracer ¶
func WithTracer(t *apm.Tracer) Option
WithTracer returns an Option which sets t as the tracer to use for tracing server requests.
type RequestNameFunc ¶ added in v2.2.0
type RequestNameFunc func(c echo.Context) string
RequestNameFunc should return span name for the given echo context