Documentation
¶
Overview ¶
Package atecho provides middleware for the 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 atatus.DefaultTracer. Use WithTracer to specify an alternative tracer.
Example ¶
package main import ( "github.com/labstack/echo" atatus "go.atatus.com/agent" "go.atatus.com/agent/module/atecho" ) func main() { e := echo.New() e.Use(atecho.Middleware()) e.GET("/hello/:name", func(c echo.Context) error { // The request context contains an atatus.Transaction, // so spans can be reported by passing the context // to atatus.StartSpan. span, _ := atatus.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 athttp.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 WithTracer ¶
WithTracer returns an Option which sets t as the tracer to use for tracing server requests.