mirror of
https://github.com/gofiber/fiber.git
synced 2025-02-21 19:32:58 +00:00
Recover middleware: Added, fiber.Ctx as a first paremeter to StackTraceHandler. (#1623)
This commit is contained in:
parent
5ff3bc88a3
commit
c9e959c4d4
@ -50,7 +50,7 @@ type Config struct {
|
||||
// StackTraceHandler defines a function to handle stack trace
|
||||
//
|
||||
// Optional. Default: defaultStackTraceHandler
|
||||
StackTraceHandler func(e interface{})
|
||||
StackTraceHandler func(c *fiber.Ctx, e interface{})
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -19,7 +19,7 @@ type Config struct {
|
||||
// StackTraceHandler defines a function to handle stack trace
|
||||
//
|
||||
// Optional. Default: defaultStackTraceHandler
|
||||
StackTraceHandler func(e interface{})
|
||||
StackTraceHandler func(c *fiber.Ctx, e interface{})
|
||||
}
|
||||
|
||||
var defaultStackTraceBufLen = 1024
|
||||
|
@ -8,7 +8,7 @@ import (
|
||||
"github.com/gofiber/fiber/v2"
|
||||
)
|
||||
|
||||
func defaultStackTraceHandler(e interface{}) {
|
||||
func defaultStackTraceHandler(c *fiber.Ctx, e interface{}) {
|
||||
buf := make([]byte, defaultStackTraceBufLen)
|
||||
buf = buf[:runtime.Stack(buf, false)]
|
||||
_, _ = os.Stderr.WriteString(fmt.Sprintf("panic: %v\n%s\n", e, buf))
|
||||
@ -30,7 +30,7 @@ func New(config ...Config) fiber.Handler {
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
if cfg.EnableStackTrace {
|
||||
cfg.StackTraceHandler(r)
|
||||
cfg.StackTraceHandler(c, r)
|
||||
}
|
||||
|
||||
var ok bool
|
||||
|
Loading…
x
Reference in New Issue
Block a user