ExpVar
Expvar 中间件用于 Fiber,它通过其 HTTP 服务器运行时以 JSON 格式提供公开的变量。该软件包通常仅导入以注册其 HTTP 处理程序。处理的路径是 /debug/vars
。
签名
func New() fiber.Handler
示例
导入作为 Fiber Web 框架一部分的中介软件包
import (
"github.com/gofiber/fiber/v2"
expvarmw "github.com/gofiber/fiber/v2/middleware/expvar"
)
在你启动 Fiber 应用后,你可以使用以下可能性
var count = expvar.NewInt("count")
app.Use(expvarmw.New())
app.Get("/", func(c *fiber.Ctx) error {
count.Add(1)
return c.SendString(fmt.Sprintf("hello expvar count %d", count.Value()))
})
访问路径 /debug/vars
查看所有变量并使用查询 r=key
过滤公开变量。
curl 127.0.0.1:3000
hello expvar count 1
curl 127.0.0.1:3000/debug/vars
{
"cmdline": ["xxx"],
"count": 1,
"expvarHandlerCalls": 33,
"expvarRegexpErrors": 0,
"memstats": {...}
}
curl 127.0.0.1:3000/debug/vars?r=c
{
"cmdline": ["xxx"],
"count": 1
}
配置
属性 | 类型 | 描述 | 默认值 |
---|---|---|---|
下一个 | func(*fiber.Ctx) bool | Next 定义了一个函数,当返回 true 时跳过此中间件。 | nil |
默认配置
var ConfigDefault = Config{
Next: nil,
}