跳到主要内容
版本: v2.x

ExpVar

用于 Fiber 的 Expvar 中间件,通过其 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) boolNext 定义一个函数,返回 true 时跳过此中间件。nil

默认配置

var ConfigDefault = Config{
Next: nil,
}