Customization
Debug
Echo#Debug
can be used to enable / disable debug mode. Debug mode sets the log level
to DEBUG
.
Logging
Log Output
Echo#Logger.SetOutput(io.Writer)
can be used to set the output destination for
the logger. Default value is os.Stdout
To completely disable logs use Echo#Logger.SetOutput(ioutil.Discard)
or Echo#Logger.SetLevel(log.OFF)
Log Level
Echo#Logger.SetLevel(log.Lvl)
can be used to set the log level for the logger.
Default value is ERROR
. Possible values:
DEBUG
INFO
WARN
ERROR
OFF
Custom Logger
Logging is implemented using echo.Logger
interface which allows you to register
a custom logger using Echo#Logger
.
Custom Server
Echo#StartServer()
can be used to run a custom server.
Example
s := &http.Server{
Addr: ":1323",
ReadTimeout: 20 * time.Minute,
WriteTimeout: 20 * time.Minute,
}
e.Logger.Fatal(e.StartServer(s))
Startup Banner
Echo#HideBanner
can be used to hide the startup banner.
Custom Listener
Echo#*Listener
can be used to run a custom listener.
Example
l, err := net.Listen("tcp", ":1323")
if err != nil {
e.Logger.Fatal(l)
}
e.Listener = l
e.Logger.Fatal(e.Start(""))
Disable HTTP/2
Echo#DisableHTTP2
can be used disable HTTP/2 protocol.
Read Timeout
Echo#*Server#ReadTimeout
can be used to set the maximum duration before timing out read
of the request.
Write Timeout
Echo#*Server#WriteTimeout
can be used to set the maximum duration before timing out write
of the response.
Validator
Echo#Validator
can be used to register a validator for performing data validation
on request payload.
Custom Binder
Echo#Binder
can be used to register a custom binder for binding request payload.
Renderer
Echo#Renderer
can be used to register a renderer for template rendering.
HTTP Error Handler
Echo#HTTPErrorHandler
can be used to register a custom http error handler.