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

Code:

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
})

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 WithTracer

func WithTracer(t *apm.Tracer) Option

WithTracer returns an Option which sets t as the tracer to use for tracing server requests.