Recover
Recover ミドルウェアは、チェーン内のどこで発生した panic からも復旧し、スタックトレースを出力して、 一元化された HTTPErrorHandler に制御を渡します。
すべてのコアミドルウェアは middleware パッケージに含まれています:
import "github.com/labstack/echo/v5/middleware"e.Use(middleware.Recover())カスタム設定
Section titled “カスタム設定”e := echo.New()e.Use(middleware.RecoverWithConfig(middleware.RecoverConfig{ StackSize: 1 << 10, // 1 KB}))上の例では StackSize を 1 KB にし、DisableStackAll と DisablePrintStack はデフォルト値を使います。
RecoverConfig · github.com/labstack/echo/v5@5196b9b
フィールドの説明は英語のソースコードのコメントから生成されています。
| フィールド | 型 | 説明 | ソース |
|---|---|---|---|
Skipper | Skipper | Skipper defines a function to skip middleware. | L17 |
StackSize | int | Size of the stack to be printed. Optional. Default value 4KB. | L21 |
DisableStackAll | bool | DisableStackAll disables formatting stack traces of all other goroutines into buffer after the trace for the current goroutine. Optional. Default value false. | L26 |
DisablePrintStack | bool | DisablePrintStack disables printing stack trace. Optional. Default value as false. | L30 |
デフォルト設定
Section titled “デフォルト設定”var DefaultRecoverConfig = RecoverConfig{ Skipper: DefaultSkipper, StackSize: 4 << 10, // 4 KB DisableStackAll: false, DisablePrintStack: false,}