fiber/middleware/expvar/expvar.go
kiyon 6e40c15149 🆕 add expvar middleware
It's wrapper of fasthttp/expvarhandler
2020-09-28 12:59:49 +08:00

27 lines
535 B
Go

package expvar
import (
"strings"
"github.com/gofiber/fiber/v2"
"github.com/valyala/fasthttp/expvarhandler"
)
// New creates a new middleware handler
func New() fiber.Handler {
// Return new handler
return func(c *fiber.Ctx) error {
path := c.Path()
// We are only interested in /debug/vars routes
if len(path) < 11 || !strings.HasPrefix(path, "/debug/vars") {
return c.Next()
}
if path == "/debug/vars" {
expvarhandler.ExpvarHandler(c.Context())
return nil
}
return c.Redirect("/debug/vars", 302)
}
}