Expvar 标头
Expvar 中间件
Fiber 的 Expvar 中间件通过其 HTTP 服务器运行时提供 JSON 格式的变体。 通常只为注册其 HTTP 处理程序的副作用而导入该包。处理的路径是 /debug/vars
。
签名
func New() fiber.Handler
示例
在 Fiber 项目框架中导入 expvar 包
package main
import (
"expvar"
"fmt"
"github.com/gofiber/fiber/v2"
expvarmw "github.com/gofiber/fiber/v2/middleware/expvar"
)
var count = expvar.NewInt("count")
func main() {
app := fiber.New()
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()))
})
fmt.Println(app.Listen(":3000"))
}
访问 /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
}
本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。