echo-v4中文文档(2)定制化

  • 52
  • 2023年6月18日11:11:47

主要是一些配置和接口,用来自定义echo框架的。

Debug模式

Echo#Debug可用于启用/禁用调试模式。调试模式将日志级别设置为DEBUG.

日志

日志记录的默认格式是 JSON,可以通过修改 header 来更改。
Echo#Logger.SetHeader(string)可用于设置记录器的标题。默认值:

{"time":"${time_rfc3339_nano}","level":"${level}","prefix":"${prefix}","file":"${short_file}","line":"${line}"}

示例:

import "github.com/labstack/gommon/log"

/* ... */

if l, ok := e.Logger.(*log.Logger); ok {
  l.SetHeader("${time_rfc3339} ${level}")
}

输出:

2018-05-08T20:30:06-07:00 INFO info

可用标签

  • time_rfc3339
  • time_rfc3339_nano
  • level
  • prefix
  • long_file
  • short_file
  • line

日志输出位置
Echo#Logger.SetOutput(io.Writer)可用于设置记录器的输出目的地。默认值为os.Stdout

要完全禁用日志,请使用Echo#Logger.SetOutput(io.Discard)Echo#Logger.SetLevel(log.OFF)

日志级别

Echo#Logger.SetLevel(log.Lvl)可用于设置记录器的日志级别。默认值为ERROR。可能的值:

  • DEBUG
  • INFO
  • WARN
  • ERROR
  • OFF

自定义记录器
日志记录是使用echo.Logger接口实现的,该接口允许您使用注册自定义记录器Echo#Logger

Echo#HideBanner可用于隐藏启动banner

自定义监听器

Echo#*Listener可用于运行自定义侦听器。

l, err := net.Listen("tcp", ":1323")
if err != nil {
  e.Logger.Fatal(err)
}
e.Listener = l
e.Logger.Fatal(e.Start(""))

禁用 HTTP/2

Echo#DisableHTTP2可用于禁用 HTTP/2 协议。

读超时

Echo#*Server#ReadTimeout可用于设置请求读取超时之前的最大持续时间。

写超时

Echo#*Server#WriteTimeout可用于设置响应写入超时之前的最大持续时间。

验证器

Echo#Validator可用于注册验证器以对请求有效负载执行数据验证。

自定义绑定器

Echo#Binder可用于为绑定请求有效负载注册自定义绑定器。

自定义 JSON 序列化程序

Echo#JSONSerializer可用于注册自定义 JSON 序列化程序。

渲染器

Echo#Renderer可用于为模板渲染注册渲染器。

HTTP 错误处理程序

Echo#HTTPErrorHandler可用于注册自定义 http 错误处理程序。

本文来自凡蜕博客(https://blog.ysboke.cn), 转载请带上地址.。
匿名

发表评论

匿名网友