package middleware import ( "base-framework/pkg/router" "log" "runtime/debug" ) func Recover() router.HandlerFunc { return func(c *router.Context) { defer func() { if err := recover(); err != nil { log.Printf("[PANIC] %v\n%s", err, debug.Stack()) } }() c.Next() } }