package middleware import ( "apiServer_service/utils/logger" "apiServer_service/utils/request" "context" "fmt" "runtime/debug" "github.com/cloudwego/hertz/pkg/app" ) func Recovery() app.HandlerFunc { return func(ctx context.Context, c *app.RequestContext) { defer func() { if r := recover(); r != nil { logger.Error("Panic Recovery", fmt.Sprintf("%v\n%s", r, debug.Stack())) request.Error(c, 500, "Internal Server Error") c.Abort() } }() c.Next(ctx) } }